CSES - HIIT Open 2024 - Results
Submission details
Task:Gerbil's run
Sender:(╯°□°)╯︵ ┻━┻
Submission time:2024-11-16 16:26:06 +0200
Language:C++ (C++17)
Status:READY
Result:
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#20.00 sdetails
#30.00 sdetails
#40.00 sdetails
#50.00 sdetails
#60.00 sdetails
#70.00 sdetails
#80.00 sdetails
#90.00 sdetails
#100.00 sdetails
#110.00 sdetails
#120.00 sdetails
#130.00 sdetails
#140.00 sdetails
#150.00 sdetails
#160.00 sdetails
#170.00 sdetails
#180.00 sdetails
#190.00 sdetails
#200.00 sdetails
#210.00 sdetails
#220.00 sdetails
#230.00 sdetails
#240.00 sdetails
#250.00 sdetails
#260.00 sdetails
#270.00 sdetails
#280.00 sdetails
#290.00 sdetails
#300.00 sdetails
#310.00 sdetails
#320.00 sdetails
#330.00 sdetails
#340.00 sdetails
#350.00 sdetails
#360.00 sdetails
#370.00 sdetails
#380.00 sdetails
#390.00 sdetails
#400.01 sdetails
#410.01 sdetails
#420.01 sdetails
#430.01 sdetails
#440.01 sdetails
#450.01 sdetails

Code

#include <iostream>
#include <cmath>
using namespace std;

typedef long double ld;
typedef long long ll;

ll B;

bool trySolve(ll n, ll r) {
	if (n<=0) return 0;
	ld len = 2*M_PI*r;
	ld olen = (len-n) / n;
	if (olen > 1.99) return 0;
	if (olen < 1.01) return 0;
	ld cur = 0;
	for(ll i=0; i<n; ++i) {
		ll a = cur/r*B + 0.5;
		cout<<a<<'/'<<B<<' '<<(a+B/r)<<'/'<<B<<'\n';
		cur += len / n;
	}
	return 1;
}

int main() {
	ll r;cin>>r;
	B = 1000000/r*r;
	ld len = 2*M_PI*r;
	ld ax = len / 2.5;
	ll a = ax;
	if (trySolve(ax+0.5, r)) return 0;
	if (trySolve(a, r)) return 0;
	if (trySolve(a+1, r)) return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
1

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 1000000/1000000
2094395/1000000 3094395/100000...

Test 2

Verdict:

input
2

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 500000/1000000
1256637/1000000 1756637/100000...

Test 3

Verdict:

input
3

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999999 333333/999999
785397/999999 1118730/999999
1570795/999999 1904128/999999
2356192/999999 2689525/999999
3141590/999999 3474923/999999
...

Test 4

Verdict:

input
4

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 250000/1000000
628319/1000000 878319/1000000
1256637/1000000 1506637/100000...

Test 5

Verdict:

input
5

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 200000/1000000
483322/1000000 683322/1000000
966644/1000000 1166644/1000000
1449966/1000000 1649966/100000...

Test 6

Verdict:

input
6

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999996 166666/999996
418877/999996 585543/999996
837755/999996 1004421/999996
1256632/999996 1423298/999996
1675509/999996 1842175/999996
...

Test 7

Verdict:

input
7

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999999 142857/999999
349066/999999 491923/999999
698131/999999 840988/999999
1047197/999999 1190054/999999
1396262/999999 1539119/999999
...

Test 8

Verdict:

input
8

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 125000/1000000
314159/1000000 439159/1000000
628319/1000000 753319/1000000
942478/1000000 1067478/1000000
1256637/1000000 1381637/100000...

Test 9

Verdict:

input
9

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999999 111111/999999
273182/999999 384293/999999
546363/999999 657474/999999
819545/999999 930656/999999
1092727/999999 1203838/999999
...

Test 10

Verdict:

input
10

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 100000/1000000
251327/1000000 351327/1000000
502655/1000000 602655/1000000
753982/1000000 853982/1000000
1005310/1000000 1105310/100000...

Test 11

Verdict:

input
11

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999999 90909/999999
224399/999999 315308/999999
448799/999999 539708/999999
673198/999999 764107/999999
897597/999999 988506/999999
...

Test 12

Verdict:

input
12

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999996 83333/999996
209439/999996 292772/999996
418877/999996 502210/999996
628316/999996 711649/999996
837755/999996 921088/999996
...

Test 13

Verdict:

input
13

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999999 76923/999999
190399/999999 267322/999999
380799/999999 457722/999999
571198/999999 648121/999999
761597/999999 838520/999999
...

Test 14

Verdict:

input
14

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999992 71428/999992
179518/999992 250946/999992
359036/999992 430464/999992
538554/999992 609982/999992
718073/999992 789501/999992
...

Test 15

Verdict:

input
15

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999990 66666/999990
165345/999990 232011/999990
330691/999990 397357/999990
496036/999990 562702/999990
661381/999990 728047/999990
...

Test 16

Verdict:

input
16

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 62500/1000000
157080/1000000 219580/1000000
314159/1000000 376659/1000000
471239/1000000 533739/1000000
628319/1000000 690819/1000000
...

Test 17

Verdict:

input
17

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999991 58823/999991
146119/999991 204942/999991
292239/999991 351062/999991
438358/999991 497181/999991
584477/999991 643300/999991
...

Test 18

Verdict:

input
18

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999990 55555/999990
139625/999990 195180/999990
279250/999990 334805/999990
418875/999990 474430/999990
558500/999990 614055/999990
...

Test 19

Verdict:

input
19

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999989 52631/999989
130898/999989 183529/999989
261797/999989 314428/999989
392695/999989 445326/999989
523593/999989 576224/999989
...

Test 20

Verdict:

input
20

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 50000/1000000
125664/1000000 175664/1000000
251327/1000000 301327/1000000
376991/1000000 426991/1000000
502655/1000000 552655/1000000
...

Test 21

Verdict:

input
50

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 20000/1000000
49867/1000000 69867/1000000
99733/1000000 119733/1000000
149600/1000000 169600/1000000
199466/1000000 219466/1000000
...

Test 22

Verdict:

input
98

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999992 10204/999992
25541/999992 35745/999992
51082/999992 61286/999992
76624/999992 86828/999992
102165/999992 112369/999992
...

Test 23

Verdict:

input
99

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999999 10101/999999
25234/999999 35335/999999
50467/999999 60568/999999
75701/999999 85802/999999
100935/999999 111036/999999
...

Test 24

Verdict:

input
100

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 10000/1000000
25033/1000000 35033/1000000
50065/1000000 60065/1000000
75098/1000000 85098/1000000
100130/1000000 110130/1000000
...

Test 25

Verdict:

input
101

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999900 9900/999900
24734/999900 34634/999900
49469/999900 59369/999900
74203/999900 84103/999900
98938/999900 108838/999900
...

Test 26

Verdict:

input
102

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999906 9803/999906
24541/999906 34344/999906
49083/999906 58886/999906
73624/999906 83427/999906
98166/999906 107969/999906
...

Test 27

Verdict:

input
158

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999982 6329/999982
15826/999982 22155/999982
31653/999982 37982/999982
47479/999982 53808/999982
63306/999982 69635/999982
...

Test 28

Verdict:

input
159

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999951 6289/999951
15707/999951 21996/999951
31414/999951 37703/999951
47122/999951 53411/999951
62829/999951 69118/999951
...

Test 29

Verdict:

input
160

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 6250/1000000
15630/1000000 21880/1000000
31260/1000000 37510/1000000
46889/1000000 53139/1000000
62519/1000000 68769/1000000
...

Test 30

Verdict:

input
161

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999971 6211/999971
15514/999971 21725/999971
31027/999971 37238/999971
46541/999971 52752/999971
62054/999971 68265/999971
...

Test 31

Verdict:

input
313

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999722 3194/999722
7981/999722 11175/999722
15963/999722 19157/999722
23944/999722 27138/999722
31926/999722 35120/999722
...

Test 32

Verdict:

input
314

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999776 3184/999776
7962/999776 11146/999776
15923/999776 19107/999776
23885/999776 27069/999776
31847/999776 35031/999776
...

Test 33

Verdict:

input
315

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999810 3174/999810
7932/999810 11106/999810
15864/999810 19038/999810
23795/999810 26969/999810
31727/999810 34901/999810
...

Test 34

Verdict:

input
316

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999824 3164/999824
7912/999824 11076/999824
15824/999824 18988/999824
23736/999824 26900/999824
31648/999824 34812/999824
...

Test 35

Verdict:

input
317

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999818 3154/999818
7882/999818 11036/999818
15764/999818 18918/999818
23646/999818 26800/999818
31528/999818 34682/999818
...

Test 36

Verdict:

input
318

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999792 3144/999792
7862/999792 11006/999792
15724/999792 18868/999792
23587/999792 26731/999792
31449/999792 34593/999792
...

Test 37

Verdict:

input
319

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999746 3134/999746
7832/999746 10966/999746
15665/999746 18799/999746
23497/999746 26631/999746
31330/999746 34464/999746
...

Test 38

Verdict:

input
320

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 3125/1000000
7815/1000000 10940/1000000
15630/1000000 18755/1000000
23445/1000000 26570/1000000
31260/1000000 34385/1000000
...

Test 39

Verdict:

input
500

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 2000/1000000
4999/1000000 6999/1000000
9997/1000000 11997/1000000
14996/1000000 16996/1000000
19994/1000000 21994/1000000
...

Test 40

Verdict:

input
990

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999900 1010/999900
2525/999900 3535/999900
5050/999900 6060/999900
7575/999900 8585/999900
10101/999900 11111/999900
...

Test 41

Verdict:

input
996

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999984 1004/999984
2510/999984 3514/999984
5020/999984 6024/999984
7531/999984 8535/999984
10041/999984 11045/999984
...

Test 42

Verdict:

input
997

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999991 1003/999991
2507/999991 3510/999991
5014/999991 6017/999991
7522/999991 8525/999991
10029/999991 11032/999991
...

Test 43

Verdict:

input
998

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999996 1002/999996
2505/999996 3507/999996
5010/999996 6012/999996
7516/999996 8518/999996
10021/999996 11023/999996
...

Test 44

Verdict:

input
999

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/999999 1001/999999
2502/999999 3503/999999
5005/999999 6006/999999
7507/999999 8508/999999
10009/999999 11010/999999
...

Test 45

Verdict:

input
1000

correct output
0/1000000 1000000/1000000
2000000/1000000 3000000/100000...

user output
0/1000000 1000/1000000
2500/1000000 3500/1000000
5001/1000000 6001/1000000
7501/1000000 8501/1000000
10001/1000000 11001/1000000
...