Task: | Kolmijako |
Sender: | Sisuaski |
Submission time: | 2025-09-05 19:43:14 +0300 |
Language: | C++ (C++17) |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 23 |
#2 | ACCEPTED | 42 |
#3 | ACCEPTED | 35 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.00 s | 1, 2, 3 | details |
#2 | ACCEPTED | 0.00 s | 2, 3 | details |
#3 | ACCEPTED | 0.01 s | 3 | details |
Code
#include <iostream> #include <vector> using namespace std; vector<int> base0[3]={{},{},{}}; vector<int> base5[3]={{1,4},{2,3},{5}}; vector<int> base8[3]={{1,5,6},{2,3,7},{4,8}}; vector<int> base9[3]={{1,2,3,4,5},{7,8},{6,9}}; int main() { int t;cin>>t; while(t--){ int n;cin>>n; int st; vector<int> (*base)[3]; if (n%6==0) base=&base0,st=0; else if (n>2&&n%6==2) base=&base8,st=8; else if (n>3&&n%6==3) base=&base9,st=9; else if (n%6==5) base=&base5,st=5; else { cout<<"NO\n"; continue; } int c=(n-st)/6; auto& b=*base; cout<<"YES\n"; for(int g=0; g<3; ++g) { cout<<b[g].size()+2*c<<'\n'; for(int i:b[g])cout<<i<<' '; for(int i=0;i<c;++i)cout<<st+1+g+3*i<<' '<<n-g-3*i<<' '; cout<<'\n'; } } }
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 1 564 4 561 7 558 10 555 13 55... Truncated |