結果
問題 | No.11 カードマッチ |
ユーザー |
![]() |
提出日時 | 2016-04-10 17:42:41 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 3 ms / 5,000 ms |
コード長 | 1,149 bytes |
コンパイル時間 | 823 ms |
コンパイル使用メモリ | 61,304 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-11 20:03:33 |
合計ジャッジ時間 | 1,232 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 19 |
ソースコード
#include<iostream> #include<vector> using namespace std; void swap(long long *a,long long *b){ int tmp; tmp=*a; *a=*b; *b=tmp; } int main(){ long long W,H,S,K; int N; vector<long long> Sv,Kv,Scv,Kcv; long long ans=0; cin>>W; cin>>H; cin>>N; for(int i=0;i<N;i++){ cin>>S>>K; if(Sv.size()==0){ Sv.push_back(S); Scv.push_back(1); } else{ bool f=true; for(int j=0;j<Sv.size();j++){ if(S==Sv[j]){ Scv[j]++; f=false; break; } } if(f){ Sv.push_back(S); Scv.push_back(1); } } if(Kv.size()==0){ Kv.push_back(K); Kcv.push_back(1); } else{ bool f=true; for(int j=0;j<Kv.size();j++){ if(K==Kv[j]){ Kcv[j]++; f=false; break; } } if(f){ Kv.push_back(K); Kcv.push_back(1); } } } for(int i=0;i<Kv.size();i++){ for(int j=0;j<Kv.size()-1-i;j++){ if(Kv[j]>Kv[j+1]){ swap(&Kv[j],&Kv[j+1]); swap(&Kcv[j],&Kcv[j+1]); } } } ans=0; int Ni=0; for(int i=1;i<=H;i++){ if(Ni>=Kv.size()||Kv[Ni]!=i) ans+=Sv.size(); else{ ans+=W-Kcv[Ni]; Ni++; } //cout<<i<<","<<ans<<endl; } cout<<ans<<endl; }