제출 #777302

#제출 시각아이디문제언어결과실행 시간메모리
777302yeysoPermutation (APIO22_perm)C++17
컴파일 에러
0 ms0 KiB
#include "perm.h" #include <bits/stdc++.h> using namespace std; vector<int> construct_permutation(long long k) { vector<long long> logs; for(long long i = 0; i < log(k+1) / log(2); i ++){ logs.push_back(pow(2, i)); } /*for(long long i = 0; i < logs.size(); i ++){ cout << logs[i] << "\n"; }*/ vector<long long> res(log(k+1) / log(2), 0); //k -= pow(2, long long(log(k+1) / log(2))); k -= logs[logs.size()-1]; long long x = log(k+1) / log(2) + 1; iota(res.begin(), res.end(), 0); //cout << k; while(k > 0){ for(long long i = logs.size() - 1; i >= 0; i --){ if(logs[i] <= k){ res.insert(res.begin() + i, x); k -= logs[i]; break; } } x += 1; } /*for(long long i = 0; i < res.size(); i ++){ cout << res[i] << " "; }*/ return res; } /* g++ -std=gnu++17 -Wall -O2 -static -o perm grader.cpp perm.cpp */

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

perm.cpp: In function 'std::vector<int> construct_permutation(long long int)':
perm.cpp:32:9: error: could not convert 'res' from 'vector<long long int>' to 'vector<int>'
   32 |  return res;
      |         ^~~
      |         |
      |         vector<long long int>