[プログラマー]完走できなかった選手
5561 ワード
✔10.質問する
多くのマラソン選手がマラソンに参加した.1人の選手を除いて、すべての選手がマラソンを完走した.
マラソンに出場する選手の名前と完走した選手の名前の並びが完成したら、完走していない選手の名前を返す解決関数を書いてください.
せいげんじょうけん
😎 ソースコード #include <string>
#include <vector>
#include <unordered_map>
using namespace std;
string solution(vector<string> participant, vector<string> completion) {
string answer = "";
unordered_map<string, int> umap;
for (auto i : completion) {
umap[i]++;
}
/* 잘 저장이 되었나 확인해봤음
for (auto it = umap.begin(); it != umap.end(); it++) {
cout << it->first << " " << it->second << endl;
}
*/
for (auto k : participant) {
umap[k]--;
if (umap[k] < 0){
answer = k;
}
}
cout << answer << endl;
return answer;
}
問題が終わったら
本当に久しぶりにC++で問題を解きました.
問題をレポートに並べ替えるとどうなりますか?という考えがあり、ハッシュに分類されているので、ハッシュで解くように努力しています.検索するとmap,無秩序mapがあることが分かったので,相違点も分かった.ソートする必要はないと思いますので、無秩序な地図で書くことができます.
問題解決策は...
#include <string>
#include <vector>
#include <unordered_map>
using namespace std;
string solution(vector<string> participant, vector<string> completion) {
string answer = "";
unordered_map<string, int> umap;
for (auto i : completion) {
umap[i]++;
}
/* 잘 저장이 되었나 확인해봤음
for (auto it = umap.begin(); it != umap.end(); it++) {
cout << it->first << " " << it->second << endl;
}
*/
for (auto k : participant) {
umap[k]--;
if (umap[k] < 0){
answer = k;
}
}
cout << answer << endl;
return answer;
}
本当に久しぶりにC++で問題を解きました.
問題をレポートに並べ替えるとどうなりますか?という考えがあり、ハッシュに分類されているので、ハッシュで解くように努力しています.検索するとmap,無秩序mapがあることが分かったので,相違点も分かった.ソートする必要はないと思いますので、無秩序な地図で書くことができます.
問題解決策は...
unordered_map<string, int> umap;
無秩序地図資料構造を用いて宣伝する.完了配列の人名をキーとし、カウント数を値とします. cout << "=== completion ===" << endl;
for (auto it = umap.begin(); it != umap.end(); it++) {
cout << it->first << ": " << it->second << endl;
}
このコードを実行すると、次の写真の完走者の名前と数字が表示されます.ここにいない人が正解という意味ですちょっと...おもしろい!
海西は新鮮な資料構造のようです.
Reference
この問題について([プログラマー]完走できなかった選手), 我々は、より多くの情報をここで見つけました https://velog.io/@rany/프로그래머스-완주하지-못한-선수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol