| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1345935 | kaze666 | Fish (IOI08_fish) | C++20 | 121 ms | 9052 KiB |
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int F, K, M;
cin >> F >> K >> M;
vector<pair<ll,int>> a(F);
for (int i = 0; i < F; i++) {
cin >> a[i].first >> a[i].second;
a[i].second--;
}
sort(a.begin(), a.end());
vector<int> cnt(K, 0);
ll cur = 1;
ll ans = 0;
int l = 0;
auto modpow = [&](ll a, ll e) {
ll r = 1;
while (e) {
if (e & 1) r = r * a % M;
a = a * a % M;
e >>= 1;
}
return r;
};
auto inv = [&](ll x) {
return modpow(x, M - 2);
};
for (int i = 0; i < F; i++) {
while (l < i && a[l].first * 2 > a[i].first) {
int t = a[l].second;
cur = cur * inv(cnt[t] + 1) % M;
cnt[t]--;
cur = cur * (cnt[t] + 1) % M;
l++;
}
int t = a[i].second;
cur = cur * inv(cnt[t] + 1) % M;
cnt[t]++;
cur = cur * (cnt[t] + 1) % M;
ans = (ans + cur - 1 + M) % M;
}
cout << ans << "\n";
}| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
