Submission #1198535


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

using pii = pair<int,int>;
using ll = long long;
#define rep(i, j) for(int i=0; i < (int)(j); i++)
#define repeat(i, j, k) for(int i = (j); i < (int)(k); i++)
#define all(v) v.begin(),v.end()
#define debug(x) cerr << #x << " : " << x << endl

template<class T> bool set_min(T &a, const T &b) { return a > b  ? a = b, true : false; }
template<class T> bool set_max(T &a, const T &b) { return a < b  ? a = b, true : false; }
// vector
template<class T> istream& operator >> (istream &is , vector<T> &v) { for(T &a : v) is >> a; return is; }
template<class T> ostream& operator << (ostream &os , const vector<T> &v) { for(const T &t : v) os << "\t" << t; return os << endl; }
// pair
template<class T, class U> ostream& operator << (ostream &os , const pair<T, U> &v) { return os << "<" << v.first << ", " << v.second << ">"; }

const int INF = 1 << 30;
const ll INFL = 1LL << 60;


class Solver {
  public:
    bool solve() {
        ll N; cin >> N;
        int len = ceil(log2(N)) + 1;
        vector<int> ans;
        rep(i, len) ans.push_back(i + 1);

        N += 1;
        stack<int> pos;        
        for(int i = len; i >= 0; i--) {
            if(N & (1 << i)) pos.push(i);
        }
        {
            int n = len + pos.size();
            for(int i = 0; not pos.empty(); i++) {
                ans.insert(ans.begin() + pos.top() + i + 1, n++);
                pos.pop();
            }
        }
        rep(i, len) ans.push_back(i + 1);
        cout << ans.size() << endl;
        rep(i, ans.size()) cout << ans[i] << (i == ans.size() - 1 ? "\n" : " ");
        return 0;
    }
};

int main() {
    cin.tie(0);
    ios::sync_with_stdio(false);
    Solver s;
    s.solve();
    return 0;
}

Submission Info

Submission Time
Task C - Tautonym Puzzle
User cormoran
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1806 Byte
Status RE
Exec Time 96 ms
Memory 512 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 1000
Status
WA × 2
WA × 26
RE × 6
Set Name Test Cases
Sample 00_example_01.txt, 00_example_02.txt
All 00_example_01.txt, 00_example_02.txt, 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt
Case Name Status Exec Time Memory
00_example_01.txt WA 4 ms 512 KB
00_example_02.txt WA 1 ms 256 KB
01.txt WA 1 ms 256 KB
02.txt WA 1 ms 256 KB
03.txt WA 1 ms 256 KB
04.txt WA 1 ms 256 KB
05.txt WA 1 ms 256 KB
06.txt WA 1 ms 256 KB
07.txt WA 1 ms 256 KB
08.txt RE 96 ms 384 KB
09.txt WA 1 ms 256 KB
10.txt WA 1 ms 256 KB
11.txt WA 1 ms 256 KB
12.txt WA 1 ms 256 KB
13.txt WA 1 ms 256 KB
14.txt WA 1 ms 256 KB
15.txt WA 1 ms 256 KB
16.txt WA 1 ms 256 KB
17.txt WA 1 ms 256 KB
18.txt WA 1 ms 256 KB
19.txt WA 1 ms 256 KB
20.txt WA 1 ms 256 KB
21.txt WA 1 ms 256 KB
22.txt WA 1 ms 256 KB
23.txt RE 96 ms 384 KB
24.txt WA 1 ms 256 KB
25.txt WA 1 ms 256 KB
26.txt WA 1 ms 256 KB
27.txt RE 96 ms 384 KB
28.txt RE 96 ms 384 KB
29.txt RE 96 ms 384 KB
30.txt RE 96 ms 384 KB