結果
問題 |
No.3085 Easy Problems
|
ユーザー |
![]() |
提出日時 | 2025-04-04 21:30:42 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 706 ms / 2,000 ms |
コード長 | 596 bytes |
コンパイル時間 | 2,012 ms |
コンパイル使用メモリ | 201,940 KB |
実行使用メモリ | 10,752 KB |
最終ジャッジ日時 | 2025-04-04 21:32:41 |
合計ジャッジ時間 | 24,188 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 31 |
ソースコード
#include <bits/stdc++.h> using namespace std; #define int long long int N,Q; signed main(){ cin>>N; vector<vector<int>> nai(1e5+1); vector<int> A(N); for(int i = 0; i < N; i++){ int a,b; cin>>a>>b; A[i] = a; nai[b].push_back(a); } cin>>Q; for(int i = 1; i <= 1e5; i++){ sort(nai[i].begin(),nai[i].end()); } sort(A.begin(),A.end()); for(int i = 0; i < Q; i++){ int x,y; cin>>x>>y; int ans = (upper_bound(A.begin(),A.end(),x) - A.begin()) - 1; ans -= (upper_bound(nai[y].begin(),nai[y].end(),x) - nai[y].begin() - 1); cout << ans << endl; } }