結果
問題 |
No.647 明太子
|
ユーザー |
![]() |
提出日時 | 2018-08-09 20:58:35 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 44 ms / 4,500 ms |
コード長 | 901 bytes |
コンパイル時間 | 689 ms |
コンパイル使用メモリ | 72,656 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-23 05:06:20 |
合計ジャッジ時間 | 2,131 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 20 |
ソースコード
#include<iostream> #include<string> #include<algorithm> #include<functional> #include<vector> #include<set> #include<queue> #include<list> #include<stdio.h> #include<stdlib.h> #include<map> #define rep(i,a,b) for(int i=a;i<b;i++) #define rrep(i,a,b) for(int i=a;i>=b;i--) #define fore(i,a) for(auto &i:a) #define all(x) (x).begin(),(x).end() using namespace std; int main() { int N,M,A[10101], B[10101], X[10101], Y[10101]; cin >> N; rep(i, 0, N) cin >> A[i] >> B[i]; cin >> M; rep(i, 0, M) cin >> X[i] >> Y[i]; int cnt[1010]; rep(m, 0, M)rep(i, 0, N)if (X[m] <= A[i] && B[i] <= Y[m])cnt[m]++; vector<int> ans; int ma = 0; rep(m, 0, M) { if (ma == cnt[m])ans.push_back(m + 1); else if (ma < cnt[m]) { ans.clear(); ans.push_back(m + 1); ma = cnt[m]; } } int n = ans.size(); if (ma == 0) { printf("0\n"); return 0; } rep(i, 0, n)printf("%d\n", ans[i]); }