Submission #1042556
Source Code Expand
// Template {{{ #include <bits/stdc++.h> #define REP(i,n) for(int i=0; i<(int)(n); ++i) using namespace std; typedef long long LL; #ifdef LOCAL #include "contest.h" #else #define dump(x) #endif const int dx[4] = {1, 0, -1, 0}; const int dy[4] = {0, 1, 0, -1}; inline bool valid(int x, int w) { return 0 <= x && x < w; } void iostream_init() { ios::sync_with_stdio(false); cin.tie(0); cout.setf(ios::fixed); cout.precision(12); } //}}} int N; vector<int> solve() { vector<int> X(N); REP(i, N) cin >> X[i]; REP(i, N) X[i]--; map<int, int> event; REP(i, N) event[ X[i] ] = i; REP(i, N) if (event[ X[i] ] != i) { return vector<int>(); // NG } typedef pair<int, int> P; priority_queue<P, vector<P>, greater<P>> before; REP(i, N) { if(i != 0) { before.push(P(X[i], i)); } } queue<int> after; vector<int> count(N); vector<int> answer; auto insert = [&](int x) { //cout << "insert " << x+1 << endl; answer.push_back(x+1); count[x]++; }; REP(i, N * N) { //cout << i << endl; if(event.count(i)) { //cout << "event" << event[i] << endl; const int x = event[i]; if(count[x] != x) { //cout << "count " << x << " " << count[x] << " is not " << x << endl; return vector<int>(); // NG } insert(x); REP(_, N - count[x]) { after.push(x); } } else { if(before.empty()) { if(after.empty()) { //cout << "before and after" << endl; return vector<int>(); // NG } else { int x = after.front(); after.pop(); insert(x); } } else { auto p = before.top(); int x = p.second; insert(x); if(count[x] < x) { // remain } else { before.pop(); } } } } return answer; } int main(){ iostream_init(); while(cin >> N) { auto res = solve(); if(res.size() != 0) { cout << "Yes" << endl; REP(i, res.size()) { cout << res[i]; if(i+1 != res.size()) cout << " "; else cout << endl; } } else { cout << "No" << endl; } } return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - K-th K |
User | ichyo |
Language | C++14 (GCC 5.4.1) |
Score | 800 |
Code Size | 2671 Byte |
Status | AC |
Exec Time | 27 ms |
Memory | 2692 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 800 / 800 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 0_00.txt, 0_01.txt |
All | 0_00.txt, 0_01.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt, 1_40.txt, 1_41.txt, 1_42.txt, 1_43.txt, 1_44.txt, 1_45.txt, 1_46.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
0_00.txt | AC | 3 ms | 256 KB |
0_01.txt | AC | 3 ms | 256 KB |
1_00.txt | AC | 3 ms | 256 KB |
1_01.txt | AC | 27 ms | 2680 KB |
1_02.txt | AC | 26 ms | 2300 KB |
1_03.txt | AC | 27 ms | 2680 KB |
1_04.txt | AC | 27 ms | 2684 KB |
1_05.txt | AC | 27 ms | 2692 KB |
1_06.txt | AC | 27 ms | 2300 KB |
1_07.txt | AC | 26 ms | 2308 KB |
1_08.txt | AC | 27 ms | 2684 KB |
1_09.txt | AC | 3 ms | 256 KB |
1_10.txt | AC | 5 ms | 900 KB |
1_11.txt | AC | 3 ms | 256 KB |
1_12.txt | AC | 3 ms | 256 KB |
1_13.txt | AC | 6 ms | 900 KB |
1_14.txt | AC | 3 ms | 256 KB |
1_15.txt | AC | 19 ms | 1908 KB |
1_16.txt | AC | 4 ms | 896 KB |
1_17.txt | AC | 7 ms | 1532 KB |
1_18.txt | AC | 24 ms | 2420 KB |
1_19.txt | AC | 25 ms | 2292 KB |
1_20.txt | AC | 20 ms | 1780 KB |
1_21.txt | AC | 24 ms | 2164 KB |
1_22.txt | AC | 22 ms | 2168 KB |
1_23.txt | AC | 6 ms | 1492 KB |
1_24.txt | AC | 24 ms | 2232 KB |
1_25.txt | AC | 20 ms | 1780 KB |
1_26.txt | AC | 6 ms | 1468 KB |
1_27.txt | AC | 7 ms | 1532 KB |
1_28.txt | AC | 3 ms | 512 KB |
1_29.txt | AC | 7 ms | 1504 KB |
1_30.txt | AC | 23 ms | 2168 KB |
1_31.txt | AC | 25 ms | 2292 KB |
1_32.txt | AC | 3 ms | 384 KB |
1_33.txt | AC | 25 ms | 2552 KB |
1_34.txt | AC | 3 ms | 384 KB |
1_35.txt | AC | 6 ms | 1468 KB |
1_36.txt | AC | 24 ms | 2296 KB |
1_37.txt | AC | 23 ms | 2168 KB |
1_38.txt | AC | 26 ms | 2552 KB |
1_39.txt | AC | 3 ms | 512 KB |
1_40.txt | AC | 12 ms | 1160 KB |
1_41.txt | AC | 7 ms | 1436 KB |
1_42.txt | AC | 17 ms | 1524 KB |
1_43.txt | AC | 23 ms | 2292 KB |
1_44.txt | AC | 3 ms | 384 KB |
1_45.txt | AC | 3 ms | 384 KB |
1_46.txt | AC | 4 ms | 760 KB |