Submission #1002910

#TimeUsernameProblemLanguageResultExecution timeMemory
1002910PagodePaivaMalnaRISC (COI21_malnarisc)C++17
0 / 100
1 ms348 KiB
#include<bits/stdc++.h> #define endl '\n' using namespace std; const int debug = 0; int32_t main(){ int n; cin >> n; vector <pair <int, int>> mergear; for(int i = 1;i <= n;i++){ mergear.push_back({i, i}); } vector <vector <pair <int, int>>> res; while(mergear.size() > 1){ vector <pair <int, int>> aux[100]; vector <pair <int, int>> novo; for(int i = 0;i+1 < mergear.size();i += 2){ auto [l1, r1] = mergear[i]; auto [l2, r2] = mergear[i+1]; novo.push_back({l1, r2}); int con = 0; while(r1-l1+1 > 1 and r2-l2+1 > 1){ aux[con].push_back({l1, l2}); aux[con].push_back({r1, r2}); l1++; r2--; con++; } if(l1 == r1){ for(int i = l2;i <= r2;i++){ aux[con].push_back({l1, i}); con++; } } else{ for(int i = r1;i >= l1;i--){ aux[con].push_back({r2, i}); con++; } } } for(int i = 0;i < 100;i++){ if(!aux[i].empty()) res.push_back(aux[i]); } if(mergear.size() % 2) novo.push_back(mergear.back()); mergear = novo; } cout << res.size() << endl; for(auto vec : res){ for(auto x : vec){ cout << "CMPSWP R" << x.first << " R" << x.second << ' '; } cout << endl; } return 0; }

Compilation message (stderr)

malnarisc.cpp: In function 'int32_t main()':
malnarisc.cpp:18:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   18 |   for(int i = 0;i+1 < mergear.size();i += 2){
      |                 ~~~~^~~~~~~~~~~~~~~~
#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...