Submission #1155852

#TimeUsernameProblemLanguageResultExecution timeMemory
1155852Jakub_WozniakMalnaRISC (COI21_malnarisc)C++20
76.85 / 100
1 ms584 KiB
#include <bits/stdc++.h> using namespace std; #define st first #define nd second typedef long long ll; typedef pair<int,int> pii; typedef pair<ll,ll> pll; set <int> t[109]; bool czy[109]; string T[309]; int N; string dodaj(int i , int j ) { if(max(i,j) > N)return ""; string aktt; aktt += "CMPSWP R"; aktt += to_string(i); aktt += " R"; aktt += to_string(j); aktt += " "; return aktt; } void wypisz(vector <int > S) { for(auto p : S)cerr << p << ' '; cerr << '\n'; } void rek(vector <int> V , int licz) { if(V.size() == 1) { return ; } if(V.size()%2)V.push_back(N+1); vector <int > V1 , V2; for(int i = 0 ; i < V.size()/2 ; i++)V1.push_back(V[i]); for(int i = V.size()/2 ; i < V.size() ; i++)V2.push_back(V[i]); for(int i = 0 ; i < V1.size() ; i++) { for(int j = 0 ;j < V1.size() ; j++) { T[licz] += dodaj(V1[j] , V2[(j+i)%V1.size()]); } licz++; } rek(V1,licz); rek(V2,licz); } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cin >> N; vector <int> POm; for(int i =1 ; i <= N ; i++) { POm.push_back(i); } rek(POm , 0); vector <string > V; int licz = 0; while(T[licz].size() > 0) { V.push_back(T[licz]); licz++; } cout << V.size() << '\n'; for(auto p : V)cout << p << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...