結果
問題 |
No.3085 Easy Problems
|
ユーザー |
![]() |
提出日時 | 2025-04-04 21:56:27 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 1,000 ms / 2,000 ms |
コード長 | 1,480 bytes |
コンパイル時間 | 2,232 ms |
コンパイル使用メモリ | 208,668 KB |
実行使用メモリ | 16,512 KB |
最終ジャッジ日時 | 2025-04-04 21:57:09 |
合計ジャッジ時間 | 28,850 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 31 |
ソースコード
#include <bits/stdc++.h> using namespace std; using ll = int64_t; using ull = uint64_t; using vi = vector<int>; using vc = vector<char>; using vs = vector<string>; using vd = vector<double>; using vll = vector<ll>; using vb = vector<bool>; using pii = pair<int,int>; using psi = pair<string,int>; using pis = pair<int,string>; using pci = pair<char,int>; using tiii = tuple<int,int,int>; using mii = map<int,int>; using mis = map<int,string>; using msi = map<string,int>; using mci = map<char,int>; using si = set<int>; using ss = set<string>; using sc = set<char>; using sll = set<ll>; using spii = set<pii>; using qi = queue<int>; using vvc = vector<vc>; using vvi = vector<vi>; using vvb = vector<vb>; using vvs = vector<vs>; using vvll = vector<vll>; using vpii = vector<pii>; using vpci = vector<pci>; using mivi = map<int,vi>; using mivs = map<int,vs>; using misi = map<int,si>; int main() { int N; cin >> N; vpii AB(N); mivi bad; for (int i = 0; i < N; i++) { cin >> AB[i].first >> AB[i].second; } sort(AB.begin(), AB.end()); vi A(N); for (int i = 0; i < N; i++) { A[i] = AB[i].first; bad[AB[i].second].push_back(i); } int Q; cin >> Q; for (int i = 0; i < Q; i++) { int X,Y,all,weak; cin >> X >> Y; all = upper_bound(A.begin(), A.end(), X) - A.begin(); if (bad.count(Y)) { weak = upper_bound(bad[Y].begin(), bad[Y].end(), all - 1) - bad[Y].begin(); } else weak = 0; cout << all - weak << endl; } }