| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1345933 | kaze666 | Fish (IOI08_fish) | C++20 | 126 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--; // 0-based
}
sort(a.begin(), a.end());
vector<int> cnt(K, 0);
ll cur = 1; // product
ll ans = 0;
int l = 0;
auto modmul = [&](ll a, ll b) {
return (a * b) % M;
};
auto modinv = [&](ll x) {
ll res = 1, p = M - 2;
while (p) {
if (p & 1) res = res * x % M;
x = x * x % M;
p >>= 1;
}
return res;
};
for (int i = 0; i < F; i++) {
while (l < i && a[l].first * 2 > a[i].first) {
int t = a[l].second;
cur = cur * modinv(cnt[t] + 1) % M;
cnt[t]--;
cur = cur * (cnt[t] + 1) % M;
l++;
}
int t = a[i].second;
cur = cur * modinv(cnt[t] + 1) % M;
cnt[t]++;
cur = cur * (cnt[t] + 1) % M;
// trừ empty set
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... | ||||
