제출 #738754

#제출 시각아이디문제언어결과실행 시간메모리
738754shantol순열 (APIO22_perm)C++17
10 / 100
272 ms262144 KiB
#include "perm.h" #include<bits/stdc++.h> using namespace std; #define ll long long #define sz size() #define pb push_back vector<int> construct_permutation(ll k){ vector<int> ans; k--; for(ll p=1, i=0;p<=k;i++,p=(p<<1)|1){ ans.pb(i); } ll p=ans.sz; vector<vector<int>> v(p+1); k=k-(1<<p)+1; for(int i=ans.sz-1;i>=0;i--){ while(k>=(1<<i)){ v[i].pb(p++); k-=(1<<i); } } vector<int> val; for(int i=0;i<ans.sz;i++){ for(int j:v[i])val.pb(j); val.pb(ans[i]); } return val; }

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

perm.cpp: In function 'std::vector<int> construct_permutation(long long int)':
perm.cpp:24:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   24 |     for(int i=0;i<ans.sz;i++){
      |                  ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...