結果
問題 | No.647 明太子 |
ユーザー |
|
提出日時 | 2018-02-17 21:44:59 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 41 ms / 4,500 ms |
コード長 | 928 bytes |
コンパイル時間 | 549 ms |
コンパイル使用メモリ | 70,932 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-06-27 02:43:36 |
合計ジャッジ時間 | 1,483 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 20 |
ソースコード
#include <iostream> #include <vector> #include <map> using namespace std; int main(int argc, char* argv[]) { int N; cin>>N; vector<int>A(N),B(N); int i,j; for (i=0;i<N;i++){ cin>>A[i]>>B[i]; } int M; cin>>M; vector<int> X(M),Y(M); for (j=0;j<M;j++){ cin>>X[j]>>Y[j]; } vector<int> Num(M,0); for (i=0;i<N;i++){ for (j=0;j<M;j++){ if (X[j]<=A[i] && Y[j]>=B[i]){ Num[j]++; } } } int maxN=0; int maxJ=0; for (j=0;j<M;j++){ if (maxN<Num[j]){ maxJ=j; maxN=Num[j]; } } if (maxN==0){ cout<<0<<endl; return 0; } multimap<int,int,greater<int>> myMap; for (j=0;j<M;j++){ myMap.insert(multimap<int,int,greater<int>>::value_type(Num[j],j+1)); } multimap<int,int,greater<int>>::iterator mit; int n=0; mit=myMap.begin(); cout<<(*mit).second<<endl; n=(*mit).first; mit++; while (mit!=myMap.end()){ if (n==(*mit).first){ cout<<(*mit).second<<endl; } mit++; } return 0; }