Task: | Kolmijako |
Sender: | Kuha |
Submission time: | 2025-09-06 12:40:59 +0300 |
Language: | C++ (C++11) |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 23 |
#2 | ACCEPTED | 42 |
#3 | ACCEPTED | 35 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.01 s | 1, 2, 3 | details |
#2 | ACCEPTED | 0.02 s | 2, 3 | details |
#3 | ACCEPTED | 0.04 s | 3 | details |
Compiler report
input/code.cpp: In function 'int main()': input/code.cpp:20:21: warning: unused variable 'target' [-Wunused-variable] 20 | int target = (n * (n + 1) / 2) / 3; | ^~~~~~
Code
#include <bits/stdc++.h> using namespace std; int sum(vector<int> &v) { int s = 0; for (int i : v) s += i; return s; } int main() { int t; cin>>t; while (t --> 0) { int n; cin>>n; if (n > 4 && (n * (n + 1) / 2) % 3 == 0) { cout<<"YES"<<endl; while (true) { int target = (n * (n + 1) / 2) / 3; vector<int> a; vector<int> b; vector<int> c; int m = n; if (m > 9) { for (; m > 9; m -= 6) { a.push_back(m); a.push_back(m - 5); b.push_back(m - 1); b.push_back(m - 4); c.push_back(m - 2); c.push_back(m - 3); } } while (m >= 1) { int x = rand() % 3; if (x == 0) a.push_back(m); if (x == 1) b.push_back(m); if (x == 2) c.push_back(m); m--; } if (sum(a) == sum(b) && sum(b) == sum(c)) { cout<<a.size()<<endl; for (int i : a) cout<<i<<" "; cout<<endl; cout<<b.size()<<endl; for (int i : b) cout<<i<<" "; cout<<endl; cout<<c.size()<<endl; for (int i : c) cout<<i<<" "; cout<<endl; break; } } } else { cout<<"NO"<<endl; } } }
Test details
Test 1
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
15 1 2 3 4 ... |
correct output |
---|
NO NO NO NO YES ... |
user output |
---|
NO NO NO NO YES ... Truncated |
Test 2
Group: 2, 3
Verdict: ACCEPTED
input |
---|
100 1 2 3 4 ... |
correct output |
---|
NO NO NO NO YES ... |
user output |
---|
NO NO NO NO YES ... Truncated |
Test 3
Group: 3
Verdict: ACCEPTED
input |
---|
100 564 895 546 980 ... |
correct output |
---|
YES 188 1 6 12 7 18 13 24 19 30 25 36 ... |
user output |
---|
YES 188 564 559 558 553 552 547 546 54... Truncated |