제출 #1034960

#제출 시각아이디문제언어결과실행 시간메모리
1034960pccAbracadabra (CEOI22_abracadabra)C++17
0 / 100
3062 ms6684 KiB
#include <bits/stdc++.h> using namespace std; #define pii pair<int,int> #define fs first #define sc second bool same(vector<int>&a,vector<int>&b){ assert(a.size() == b.size()); for(int i = 0;i<a.size();i++){ if(a[i] != b[i])return false; } return true; } vector<int> shuf(vector<int> &v){ vector<int> vl,vr; int pl = 0,pr = 0; for(int i = 0;i<v.size();i++){ if(i+i<v.size())vl.push_back(v[i]); else vr.push_back(v[i]); } vector<int> re; while(pl<vl.size()&&pr<vr.size()){ if(vl[pl]<vr[pr])re.push_back(vl[pl++]); else re.push_back(vr[pr++]); } while(pl<vl.size())re.push_back(vl[pl++]); while(pr<vr.size())re.push_back(vr[pr++]); return re; } int N,Q; vector<int> v; int epo; int main(){ ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); cin>>N>>Q; v.resize(N); for(int i = 0;i<N;i++)cin>>v[i]; epo = 0; auto vv = v; auto vvv = vv; while(!same(vvv = shuf(vv),vv)){ vv = vvv; epo++; } cerr<<"EPO: "<<epo<<endl; while(Q--){ int t,id; cin>>t>>id; auto pre = v,now = v; while(t--&&!same(now,pre = shuf(now))){ pre.swap(now); } cout<<now[id-1]<<'\n'; } return 0; }

컴파일 시 표준 에러 (stderr) 메시지

Main.cpp: In function 'bool same(std::vector<int>&, std::vector<int>&)':
Main.cpp:10:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   10 |  for(int i = 0;i<a.size();i++){
      |                ~^~~~~~~~~
Main.cpp: In function 'std::vector<int> shuf(std::vector<int>&)':
Main.cpp:19:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |  for(int i = 0;i<v.size();i++){
      |                ~^~~~~~~~~
Main.cpp:20:9: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   20 |   if(i+i<v.size())vl.push_back(v[i]);
      |      ~~~^~~~~~~~~
Main.cpp:24:10: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   24 |  while(pl<vl.size()&&pr<vr.size()){
      |        ~~^~~~~~~~~~
Main.cpp:24:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   24 |  while(pl<vl.size()&&pr<vr.size()){
      |                      ~~^~~~~~~~~~
Main.cpp:28:10: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   28 |  while(pl<vl.size())re.push_back(vl[pl++]);
      |        ~~^~~~~~~~~~
Main.cpp:29:10: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   29 |  while(pr<vr.size())re.push_back(vr[pr++]);
      |        ~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...