제출 #642540

#제출 시각아이디문제언어결과실행 시간메모리
642540danikoynov순열 (APIO22_perm)C++17
64.62 / 100
18 ms1148 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; vector < int > construct_permutation(ll k) { vector < int > v; k --; ll cur = 0, cnt = 0; for (ll bit = 0; bit <= 63; bit ++) { if ((k & ((ll)1 << bit)) != 0) { vector < int > d; for (int s = 0; s < bit; s ++) d.push_back(cur ++); cnt ++; for (int j = 0; j < v.size(); j ++) d.push_back(v[j]); v = d; } } vector < int > d; for (int s = 0; s < cnt; s ++) d.push_back(cur ++); reverse(d.begin(), d.end()); for (int j = 0; j < v.size(); j ++) d.push_back(v[j]); v = d; /**for (int i = 0; i < v.size(); i ++) cout << v[i] << " "; cout << endl;*/ return v; }

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

perm.cpp: In function 'std::vector<int> construct_permutation(ll)':
perm.cpp:17:31: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |             for (int j = 0; j < v.size(); j ++)
      |                             ~~^~~~~~~~~~
perm.cpp:27:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   27 |     for (int j = 0; j < v.size(); j ++)
      |                     ~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...