1

配列を使用してみましたが、すべての要素が必要なわけではないため、境界が大きすぎるためコンパイルできません。

ですから、おそらくマップやベクトルなどを使用して、より動的なものを試してみたいと思います (皆さんが推奨するものは何でも)。

私が機能を持っているように:

long long func(long long arg1, long long arg2, long long arg3){
      check if [arg1, arg2, arg3] is memoized, and if it is, return it
      ....function body...
      store return value with [arg1, arg2, arg3] in memoization cache
      return value;
  }

これどうやってするの?

4

1 に答える 1

2

mapにマッピングpair<pair<long long, long long>, long long>するために使用できますlong long

キーがそこにあるかどうかを確認したい場合は、単にfind()を使用してください。マップに存在することを確認したキーの割り当てとアクセスは、[]オーバーロードされた演算子で安全に実行できます。

編集

または、3 つのキーを含む独自の構造をlong long定義し、それらの自然な順序を定義することもできます (map正しく機能するため)。そうすれば、長いpair構文を避けることができます。

于 2012-06-20T03:18:50.363 に答える