Task: | Summa |
Sender: | Alexander Popov |
Submission time: | 2019-01-17 15:53:20 +0200 |
Language: | C++ |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 100 |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.02 s | details |
#2 | ACCEPTED | 0.01 s | details |
#3 | ACCEPTED | 0.02 s | details |
#4 | ACCEPTED | 0.02 s | details |
#5 | ACCEPTED | 0.03 s | details |
#6 | ACCEPTED | 0.03 s | details |
#7 | ACCEPTED | 0.02 s | details |
#8 | ACCEPTED | 0.02 s | details |
#9 | ACCEPTED | 0.01 s | details |
#10 | ACCEPTED | 0.03 s | details |
#11 | ACCEPTED | 0.03 s | details |
#12 | ACCEPTED | 0.02 s | details |
#13 | ACCEPTED | 0.01 s | details |
#14 | ACCEPTED | 0.02 s | details |
#15 | ACCEPTED | 0.01 s | details |
#16 | ACCEPTED | 0.01 s | details |
#17 | ACCEPTED | 0.01 s | details |
#18 | ACCEPTED | 0.02 s | details |
#19 | ACCEPTED | 0.02 s | details |
#20 | ACCEPTED | 0.02 s | details |
#21 | ACCEPTED | 0.02 s | details |
#22 | ACCEPTED | 0.01 s | details |
#23 | ACCEPTED | 0.02 s | details |
#24 | ACCEPTED | 0.03 s | details |
#25 | ACCEPTED | 0.02 s | details |
#26 | ACCEPTED | 0.02 s | details |
#27 | ACCEPTED | 0.02 s | details |
#28 | ACCEPTED | 0.01 s | details |
Code
#include <cstdint>#include <bits/stdc++.h> // wtf/*for first in range(1, 1001):for second in range(1, 1001-first-1):for third in range(1, 1001-first-second):if not set([first, second, third]) in doneSets:print repr([first, second, third]), first+second+third, first, second, thirdwhile True:passn = 1000 + 1for n in range(3, 1001):counter = 0doneSets = []for first in range(1, n):if first == second:continuefor second in range(1, n-first-1):for third in range(1, n-first-second):if second == third or first == third:continuekek = set([first, second, third])if not kek in doneSets:doneSets.append(kek)if sum(kek) == (n-1):counter += 1print n-1, countern = 1000for first in range(1, n-1):k = 0d = 2i = 8damn = [0, 0, 0, 0, 0, 0, 1, 1, 2, 3, 4, 5, 7, 8]for x in range(14, 1001):if k < 4:i += dk += 1elif k == 4:i += d + 1k += 1elif k == 5:i += dk = 0d += 1print x, idamn.append(i)*/std::vector<uint64_t> values = {0, 0, 0, 0, 0, 0, 1, 1, 2, 3, 4, 5, 7, 8};int main() {uint64_t n;std::cin >> n;if (n < 14) {std::cout << values[n] << std::endl;return 0;}uint64_t k = 0;uint64_t d = 2;uint64_t i = 8;uint64_t result = 0;for (uint64_t x = 14; x <= n; ++x) {if (k < 4) { i += d; k += 1; }else if (k == 4) { i += d + 1; k += 1; }else if (k == 5) { i += d; k = 0; d += 1; }result = i;}std::cout << result << std::endl;return 0;}
Test details
Test 1
Verdict: ACCEPTED
input |
---|
1 |
correct output |
---|
0 |
user output |
---|
0 |
Test 2
Verdict: ACCEPTED
input |
---|
2 |
correct output |
---|
0 |
user output |
---|
0 |
Test 3
Verdict: ACCEPTED
input |
---|
3 |
correct output |
---|
0 |
user output |
---|
0 |
Test 4
Verdict: ACCEPTED
input |
---|
4 |
correct output |
---|
0 |
user output |
---|
0 |
Test 5
Verdict: ACCEPTED
input |
---|
5 |
correct output |
---|
0 |
user output |
---|
0 |
Test 6
Verdict: ACCEPTED
input |
---|
6 |
correct output |
---|
1 |
user output |
---|
1 |
Test 7
Verdict: ACCEPTED
input |
---|
7 |
correct output |
---|
1 |
user output |
---|
1 |
Test 8
Verdict: ACCEPTED
input |
---|
8 |
correct output |
---|
2 |
user output |
---|
2 |
Test 9
Verdict: ACCEPTED
input |
---|
9 |
correct output |
---|
3 |
user output |
---|
3 |
Test 10
Verdict: ACCEPTED
input |
---|
10 |
correct output |
---|
4 |
user output |
---|
4 |
Test 11
Verdict: ACCEPTED
input |
---|
20 |
correct output |
---|
24 |
user output |
---|
24 |
Test 12
Verdict: ACCEPTED
input |
---|
30 |
correct output |
---|
61 |
user output |
---|
61 |
Test 13
Verdict: ACCEPTED
input |
---|
40 |
correct output |
---|
114 |
user output |
---|
114 |
Test 14
Verdict: ACCEPTED
input |
---|
50 |
correct output |
---|
184 |
user output |
---|
184 |
Test 15
Verdict: ACCEPTED
input |
---|
60 |
correct output |
---|
271 |
user output |
---|
271 |
Test 16
Verdict: ACCEPTED
input |
---|
70 |
correct output |
---|
374 |
user output |
---|
374 |
Test 17
Verdict: ACCEPTED
input |
---|
80 |
correct output |
---|
494 |
user output |
---|
494 |
Test 18
Verdict: ACCEPTED
input |
---|
90 |
correct output |
---|
631 |
user output |
---|
631 |
Test 19
Verdict: ACCEPTED
input |
---|
100 |
correct output |
---|
784 |
user output |
---|
784 |
Test 20
Verdict: ACCEPTED
input |
---|
200 |
correct output |
---|
3234 |
user output |
---|
3234 |
Test 21
Verdict: ACCEPTED
input |
---|
300 |
correct output |
---|
7351 |
user output |
---|
7351 |
Test 22
Verdict: ACCEPTED
input |
---|
400 |
correct output |
---|
13134 |
user output |
---|
13134 |
Test 23
Verdict: ACCEPTED
input |
---|
500 |
correct output |
---|
20584 |
user output |
---|
20584 |
Test 24
Verdict: ACCEPTED
input |
---|
600 |
correct output |
---|
29701 |
user output |
---|
29701 |
Test 25
Verdict: ACCEPTED
input |
---|
700 |
correct output |
---|
40484 |
user output |
---|
40484 |
Test 26
Verdict: ACCEPTED
input |
---|
800 |
correct output |
---|
52934 |
user output |
---|
52934 |
Test 27
Verdict: ACCEPTED
input |
---|
900 |
correct output |
---|
67051 |
user output |
---|
67051 |
Test 28
Verdict: ACCEPTED
input |
---|
1000 |
correct output |
---|
82834 |
user output |
---|
82834 |