を反復して、キーのためのベクトルにアクセスしますか? ベクトル、iは、この形式のデータの最初の列には、C言語でマップ内のキーのためのベクトルを格納++とCにマップ内の特定のキーのためのベクトルを作成するにはどうすればよい++およびそれらにアクセスする方法をマップ
100 6 7
56 7 8
100 90 8
100 8 9
ここ
100や56キーであり、キー100のために私は要素6 7 90 8 8 9 及びキー56を含むベクターを作成する必要が受け入れるべきであると仮定しますbe 7 8 。これをC++でどのように行うことができますか?同時に、C++で特定のキーのベクトルにアクセスする方法は? 私はこのようにベクトルにインセットしようとしましたが、マップを反復してキーのベクトルにアクセスできませんでした。
int k;
cin>>k;
for(int i=1;i<=k;i++){
int r,c1,c2;
cin>>r>>c1>>c2;
mymap[r].push_back(c1);
mymap[r].push_back(c2);
}
どのようにマップを使用してC++で行うことができますか?
を参照してくださいあなたは* * [ 'のstd :: map']を(http://en.cppreference.com/w/cpp/container/map)反復処理する方法を知っていますか?反復子が['std :: pair'](http://en.cppreference.com/w/cpp/utility/pair)に「ポイント」していることは知っていますか?あなたはあなたが持っている問題を詳しく教えていただけますか?可能であれば、[最小限の、完全で実証可能な例](http://stackoverflow.com/help/mcve)を作成してください。 –
@JoachimPileborg私はそれがベクトルにアクセスすることは難しいと思っています。キーの要素にアクセスする方法としてコードを書くことができますか?キー100のために、私はベクトルを持っていなければなりません6 7 90 8 8 9は印刷されます – yellowpanda
あなたはすでに 'mymap [r]'がベクトルにアクセスできることを知っているようですので、 'push_back'を呼び出すことができます。 'mymap [r] .begin()'と 'mymap [r] .end()'を試してみてはいかがですか? –