Submission #726827

# Submission time Handle Problem Language Result Execution time Memory
726827 2023-04-19T12:02:50 Z penguin133 Strange Device (APIO19_strange_device) C++17
65 / 100
490 ms 53256 KB
#include <bits/stdc++.h>
using namespace std;

#define int long long
#define pi pair<int, int>
#define pii pair<int, pi>
#define fi first
#define se second
#ifdef _WIN32
#define getchar_unlocked _getchar_nolock
#endif
mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());

void solve(){
	int n, a, b;
	cin >> n >> a >> b;
	int tmp = __gcd(a, b+1);
	__int128 x = a;
	x *= b;
	x /= tmp;
	vector <pi> v;
	int ans = 0;
	for(int i=1;i<=n;i++){
		int l, r; cin >> l >> r;
		if(l == r){
			v.push_back({l%x, l%x});
			continue;
		}
		l %= x;
		r %= x;
		if(l > r)v.push_back({l, x-1}), v.push_back({0, r});
		else v.push_back({l, r});
	}
	sort(v.begin(), v.end());
	int prv = -1, st = -1;
	for(auto [i, j] : v){
		if(i > prv){
			if(prv != -1)ans += prv-st+1;
			st = i;
		}
		prv = max(prv, j);
	}
	if(prv != -1)ans += prv-st+1;
	cout << ans;
}

main(){
	ios::sync_with_stdio(0);cin.tie(0);
	int tc = 1;
	//cin >> tc;
	for(int tc1=1;tc1<=tc;tc1++){
		// cout << "Case #" << tc1 << ": ";
		solve();
	}
}

Compilation message

strange_device.cpp:47:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   47 | main(){
      | ^~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 5 ms 984 KB Output is correct
3 Correct 7 ms 984 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 340 KB Output is correct
12 Correct 1 ms 212 KB Output is correct
13 Correct 1 ms 212 KB Output is correct
14 Correct 1 ms 324 KB Output is correct
15 Correct 1 ms 212 KB Output is correct
16 Correct 5 ms 1080 KB Output is correct
17 Correct 45 ms 5692 KB Output is correct
18 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Incorrect 1 ms 212 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 324 KB Output is correct
2 Correct 1 ms 340 KB Output is correct
3 Correct 1 ms 372 KB Output is correct
4 Correct 2 ms 340 KB Output is correct
5 Correct 283 ms 16932 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 414 ms 17256 KB Output is correct
3 Correct 414 ms 17276 KB Output is correct
4 Correct 406 ms 22824 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 414 ms 17256 KB Output is correct
3 Correct 414 ms 17276 KB Output is correct
4 Correct 406 ms 22824 KB Output is correct
5 Correct 1 ms 324 KB Output is correct
6 Correct 438 ms 22248 KB Output is correct
7 Correct 405 ms 22644 KB Output is correct
8 Correct 421 ms 22732 KB Output is correct
9 Correct 473 ms 53256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 414 ms 17256 KB Output is correct
3 Correct 414 ms 17276 KB Output is correct
4 Correct 406 ms 22824 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 45 ms 5660 KB Output is correct
7 Correct 44 ms 5696 KB Output is correct
8 Correct 43 ms 5712 KB Output is correct
9 Correct 44 ms 5640 KB Output is correct
10 Correct 45 ms 5688 KB Output is correct
11 Correct 44 ms 5688 KB Output is correct
12 Correct 44 ms 5824 KB Output is correct
13 Correct 48 ms 5764 KB Output is correct
14 Correct 49 ms 5724 KB Output is correct
15 Correct 56 ms 5632 KB Output is correct
16 Correct 47 ms 5696 KB Output is correct
17 Correct 47 ms 5760 KB Output is correct
18 Correct 409 ms 22700 KB Output is correct
19 Correct 410 ms 22644 KB Output is correct
20 Correct 466 ms 21968 KB Output is correct
21 Correct 44 ms 5652 KB Output is correct
22 Correct 43 ms 5712 KB Output is correct
23 Correct 131 ms 18404 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 47 ms 4044 KB Output is correct
3 Correct 46 ms 4008 KB Output is correct
4 Correct 490 ms 18096 KB Output is correct
5 Correct 44 ms 3932 KB Output is correct
6 Correct 46 ms 3860 KB Output is correct
7 Correct 49 ms 4036 KB Output is correct
8 Correct 44 ms 3860 KB Output is correct
9 Correct 46 ms 4028 KB Output is correct
10 Correct 45 ms 3964 KB Output is correct
11 Correct 53 ms 3652 KB Output is correct
12 Correct 39 ms 3948 KB Output is correct
13 Correct 46 ms 3952 KB Output is correct
14 Correct 453 ms 17044 KB Output is correct
15 Correct 43 ms 4016 KB Output is correct
16 Correct 439 ms 53204 KB Output is correct
17 Correct 425 ms 53252 KB Output is correct
18 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 5 ms 984 KB Output is correct
3 Correct 7 ms 984 KB Output is correct
4 Correct 1 ms 212 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 1 ms 212 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 340 KB Output is correct
12 Correct 1 ms 212 KB Output is correct
13 Correct 1 ms 212 KB Output is correct
14 Correct 1 ms 324 KB Output is correct
15 Correct 1 ms 212 KB Output is correct
16 Correct 5 ms 1080 KB Output is correct
17 Correct 45 ms 5692 KB Output is correct
18 Correct 1 ms 212 KB Output is correct
19 Correct 1 ms 212 KB Output is correct
20 Incorrect 1 ms 212 KB Output isn't correct
21 Halted 0 ms 0 KB -