제출 #744478

#제출 시각아이디문제언어결과실행 시간메모리
744478Dan4Life순열 (APIO22_perm)C++17
컴파일 에러
0 ms0 KiB
#include "perm.h" #include <bits/stdc++.h> using namespace std; using ll = long long; #define pb push_back #define all(a) begin(a), end(a) vector<int> construct_permutation(ll n) { vector<int> ans; ll xd = 1, p=0; while(xd*2<=n) xd*=2, p++; if(xd==n){ for(int i = 0; i < p; i++) ans.pb(i); return ans; } int cnt = 199; n--; and.pb(cnt+1); for(int i = 0; i < p; i++){ if(n&(1<<i)) ans.pb(cnt--); ans.pb(i); } vector<int> v; for(auto u : ans) v.pb(u); sort(all(v)); for(auto &u : ans) u=lower_bound(all(v),u)-begin(v); return ans; }

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

perm.cpp: In function 'std::vector<int> construct_permutation(ll)':
perm.cpp:18:10: error: expected identifier before '.' token
   18 |  n--; and.pb(cnt+1);
      |          ^
perm.cpp:24:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   24 |     for(auto u : ans) v.pb(u); sort(all(v));
      |     ^~~
perm.cpp:24:32: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   24 |     for(auto u : ans) v.pb(u); sort(all(v));
      |                                ^~~~