teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記1

2021/06/12 10:16

投稿

BeatStar
BeatStar

スコア4962

answer CHANGED
@@ -3,4 +3,37 @@
3
3
  つまり、書き方はいくらでもあると言うこと。仕様に沿っていて、実行結果が合っていればそれでいいのです。
4
4
 
5
5
  質問にある解説の実装方法を含めると、
6
- 私の場合は3種類ほど思いつきますね。
6
+ 私の場合は3種類ほど思いつきますね。
7
+
8
+ -----------------------
9
+
10
+ [追記1]
11
+
12
+ たとえば、以下の通りです。
13
+
14
+ ```
15
+ [候補1]
16
+ 単に構造体を定義して、それの配列またはvectorを使う
17
+
18
+ [候補2]
19
+ 候補1のクラス版
20
+
21
+ [候補3]
22
+ std::vector< std::pair<int,string> > を使う
23
+ ```
24
+
25
+ さらに考えれば、(言われてから気づきましたが)
26
+
27
+ ```
28
+ [候補4]
29
+ std::priority_queueを使う
30
+
31
+ [候補5]
32
+ std::mapを使う
33
+ ```
34
+
35
+ もあり得ますね。
36
+
37
+ (最初、回答したとき、単に「データを確保するという目的」だけに注目していたので、priority_queueとかが思い付かなかった……)
38
+
39
+ std::priority_queueは「優先度付きキュー」なので、実装はともかく、取り出すときは「ソート済み」になるため、今回の目的を考えると最適かもしれません。