답안 #1116209

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1116209 2024-11-21T10:48:26 Z SalihSahin MalnaRISC (COI21_malnarisc) C++14
14.2911 / 100
2 ms 592 KB
#include <bits/stdc++.h>
#define pb push_back
#define int long long
using namespace std;

const int inf = 1e16;
const int N = 10;

vector< vector<array<int, 2> > > ans[N];

void f(int l, int r, int depth){
   if(l == r) return;
   int m = (l + r)/2;

   for(int i = l; i <= m; i++){
      vector<array<int, 2> > op;
      int st = i;
      for(int j = m+1; j <= r; j++){
         op.pb({st, j});
         st++;
         if(st > m) st = l;
      }

      ans[depth].pb(op);
   }

   f(l, m, depth + 1);
   f(m+1, r, depth + 1);
}

int32_t main(){
   ios_base::sync_with_stdio(false);
   cin.tie(0); cout.tie(0);
   int n;
   cin>>n;
   f(0, n-1, 0);
   int cnt = 0;

   for(int i = 0; i < N; i++){
      //cout<<"depth = "<<i<<endl;
      //int cnt = 1;
      for(auto itr: ans[i]){
         //cout<<cnt<<" nolu vector"<<endl;
         cnt++;
      }
   }

   cout<<cnt<<endl;
   for(int i = 0; i < N; i++){
      for(auto itr: ans[i]){
         for(auto itr2: itr){
            cout<<"CMPSWP R"<<itr2[0]+1<<" R"<<itr2[1]+1<<" ";
         }
         cout<<endl;
      }
   }
   return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 336 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 336 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 336 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 336 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 336 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 1 ms 336 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 2 ms 336 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 2 ms 336 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 2 ms 592 KB Partially correct
# 결과 실행 시간 메모리 Grader output
1 Partially correct 2 ms 592 KB Partially correct