結果
問題 |
No.3085 Easy Problems
|
ユーザー |
👑 |
提出日時 | 2025-04-06 01:09:59 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
RE
|
実行時間 | - |
コード長 | 1,164 bytes |
コンパイル時間 | 3,775 ms |
コンパイル使用メモリ | 304,988 KB |
実行使用メモリ | 10,240 KB |
最終ジャッジ日時 | 2025-04-06 01:10:17 |
合計ジャッジ時間 | 16,680 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | WA * 2 RE * 29 |
ソースコード
#include <bits/stdc++.h> // all #include <boost/sort/pdqsort/pdqsort.hpp> // pdqsort #pragma GCC optimize ("O3") #pragma GCC target ("arch=x86-64-v3,tune=native") using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); int n; cin >> n; vector<pair<int, int>> ab(n); vector<vector<int>> ba(100001); for (int i = 0; i < n; i++) { int a, b; cin >> a >> b; ab[i] = {a, b}; ba[b].push_back(a); } for (int i = 1; i <= n; i++) { boost::sort::pdqsort(ba[i].begin(), ba[i].end()); } boost::sort::pdqsort(ab.begin(), ab.end(), [](pair<int, int> a, pair<int, int> b) { return a.first < b.first; }); int q; cin >> q; while (q--) { int x, y; cin >> x >> y; auto it = ranges::partition_point(ab.begin(), ab.end(), [x](pair<int, int> a) { return a.first <= x; }); auto it2 = ranges::partition_point(ba[y].begin(), ba[y].end(), [x](int a) { return a <= x; }); auto r = distance(ab.begin(), it) - distance(ba[y].begin(), it2); cout << r << '\n'; } }