結果
| 問題 |
No.628 Tagの勢い
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-05-14 22:42:59 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 5 ms / 2,000 ms |
| コード長 | 899 bytes |
| コンパイル時間 | 1,019 ms |
| コンパイル使用メモリ | 82,428 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-10-07 22:48:09 |
| 合計ジャッジ時間 | 1,674 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 19 |
ソースコード
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
struct PIC{
int s;
string tag;
PIC(int _s,string _tag){
s=_s;
tag=_tag;
}
};
bool Comp(PIC &l,PIC &r){
if (l.s>r.s){
return true;
}else if (l.s==r.s){
if (l.tag.compare(r.tag)<0){
return true;
}
}
return false;
}
int main(int argc, char* argv[])
{
int N;
cin>>N;
int No;
vector<PIC> myPIC;
int i;
int M,S;
for (i=0;i<N;i++){
cin>>No;
cin>>M>>S;
for (int j=0;j<M;j++){
string t;
cin>>t;
bool bFound=false;
for (int k=0;k<myPIC.size();k++){
if (myPIC[k].tag.compare(t)==0){
myPIC[k].s+=S;
bFound=true;
break;
}
}
if (!bFound){
myPIC.push_back(PIC(S,t));
}
}
}
sort(myPIC.begin(),myPIC.end(),Comp);
for (i=0;i<myPIC.size();i++){
cout<<myPIC[i].tag<<" "<<myPIC[i].s<<endl;
if (i==9){
break;
}
}
return 0;
}