| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1342299 | orgiloogii | Strange Device (APIO19_strange_device) | C++20 | 285 ms | 32580 KiB |
#include <bits/stdc++.h>
#define int long long
#define ff first
#define ss second
using namespace std;
signed main() {
ios_base::sync_with_stdio(0);
cin.tie(NULL);
int n, a, b;
cin >> n >> a >> b;
__int128 loops = (a / __gcd(a, b + 1));
loops *= b;
int l[n], r[n];
for (int i = 0;i < n;i++) {
cin >> l[i] >> r[i];
}
int lim = r[n - 1];
if (loops > lim) {
int ans = 0;
for (int i = 0;i < n;i++) {
ans += r[i] - l[i] + 1;
}
cout << ans << endl;
return 0;
}
int loop = (a / __gcd(a, b + 1));
loop *= b;
vector <pair <int, int>> v;
for (int i = 0;i < n;i++) {
int diff = l[i] % loop;
diff = (l[i] - diff) / loop;
l[i] %= loop;
// cout << l[i] << ' ' << diff << endl;
r[i] -= diff * loop;
if (l[i] + loop <= r[i]) {
cout << loop;
return 0;
}
if (r[i] >= loop) {
v.push_back({0, r[i] % loop});
v.push_back({l[i], loop - 1});
}
else {
v.push_back({l[i], r[i]});
}
}
sort(v.begin(), v.end());
int ans = 0;
int ls = -1;
for (auto [x, y] : v) {
if (x > ls) {
ans += y - x + 1;
}
else {
ans += y - ls;
}
ls = max(ls, y);
}
cout << ans << endl;
}| # | 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... | ||||
