結果
| 問題 |
No.2710 How many more?
|
| コンテスト | |
| ユーザー |
manabeai
|
| 提出日時 | 2024-03-31 14:25:29 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 360 ms / 2,000 ms |
| コード長 | 1,079 bytes |
| コンパイル時間 | 1,865 ms |
| コンパイル使用メモリ | 206,444 KB |
| 最終ジャッジ日時 | 2025-02-20 17:13:17 |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 17 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll is_ika(vector<ll> &A, ll x) {
ll under_mid = upper_bound(A.begin(), A.end(), x) - A.begin();
return under_mid;
}
ll is_ijo(vector<ll> &A, ll x) {
ll upper_mid = A.end() - lower_bound(A.begin(), A.end(), x);
return upper_mid;
}
ll is_koe(vector<ll> &A, ll x) {
ll upper_mid = A.end() - upper_bound(A.begin(), A.end(), x);
return upper_mid;
}
ll is_miman(vector<ll> &A, ll x) {
ll under_mid = lower_bound(A.begin(), A.end(), x) - A.begin();
return under_mid;
}
void solve() {
ll n,q;
cin >> n >> q;
vector<ll> A(n);
for (ll i = 0; i < n; ++i) cin >> A[i];
map<ll,ll> juni;
for (ll i = 0; i < n; ++i) {
juni[i]=A[i];
}
sort(A.begin(), A.end());
for (ll qqq = 0; qqq < q; ++qqq) {
ll kyo = 0;
ll x,y;
cin >> x >> y;
--x, --y;
ll xm = is_miman(A,juni[x]);
ll ym = is_ika(A,juni[y]);
cout << max((ll)0,xm-ym) << endl;
}
}
int main() {
solve();
return 0;
}
manabeai