Submission #1307989
Source Code Expand
#include <bits/stdc++.h> using namespace std; #define DUMP(x) cerr << #x << "=" << x << endl #define DUMP2(x, y) cerr<<"("<<#x<<", "<<#y<<") = ("<<x<<", "<<y<<")"<< endl #define BINARY(x) static_cast<bitset<16> >(x) #define rep(i,n) for(int i=0;i<(int)(n);i++) #define REP(i,m,n) for (int i=m;i<(int)(n);i++) #define in_range(x, y, w, h) (0<=(int)(x) && (int)(x)<(int)(w) && 0<=(int)(y) && (int)(y)<(int)(h)) #define ALL(a) (a).begin(),(a).end() typedef long long ll; const int INF = 1e9; const ll INFLL = 1e18; typedef pair<int, int> PII; int dx[4]={0, -1, 1, 0}, dy[4]={-1, 0, 0, 1}; int main() { ios::sync_with_stdio(false); int N; cin >> N; vector<PII> X(N); int NN = N*N; vector<int> ans(NN); rep(i, N) { int tmp; cin >> tmp; X[i] = PII(tmp-1, i+1); } sort(ALL(X)); bool ok = true; for (auto x : X) { ans[x.first] = x.second; if (x.second == 1) continue; int cnt = 0; for (int i=0; i<x.first; i++) { if (ans[i] == 0) { ans[i] = x.second; cnt++; } if (cnt == x.second - 1) break; } if (cnt < x.second-1) { ok = false; break; } } for (int j=N-1; j>=0; j--) { PII x = X[j]; if (x.second == N) continue; int cnt = 0; for (int i=NN-1; i>x.first; i--) { if (ans[i] == 0) { ans[i] = x.second; cnt++; } if (cnt == N - x.second) break; } if (cnt < N - x.second) { ok = false; break; } } if (ok) { cout << "Yes" << endl; rep(i, NN) { // if (i > 0) cout << " "; cout << ans[i] << " "; } cout << endl; } else { cout << "No" << endl; } }
Submission Info
Submission Time | |
---|---|
Task | D - K-th K |
User | OUDON |
Language | C++14 (GCC 5.4.1) |
Score | 800 |
Code Size | 1973 Byte |
Status | AC |
Exec Time | 100 ms |
Memory | 2304 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 | 1 ms | 256 KB |
0_01.txt | AC | 1 ms | 256 KB |
1_00.txt | AC | 1 ms | 256 KB |
1_01.txt | AC | 59 ms | 2176 KB |
1_02.txt | AC | 60 ms | 2176 KB |
1_03.txt | AC | 59 ms | 2176 KB |
1_04.txt | AC | 59 ms | 2176 KB |
1_05.txt | AC | 100 ms | 2176 KB |
1_06.txt | AC | 100 ms | 2176 KB |
1_07.txt | AC | 100 ms | 2304 KB |
1_08.txt | AC | 99 ms | 2176 KB |
1_09.txt | AC | 22 ms | 1280 KB |
1_10.txt | AC | 22 ms | 1280 KB |
1_11.txt | AC | 2 ms | 1280 KB |
1_12.txt | AC | 42 ms | 1280 KB |
1_13.txt | AC | 42 ms | 1280 KB |
1_14.txt | AC | 2 ms | 1280 KB |
1_15.txt | AC | 48 ms | 1536 KB |
1_16.txt | AC | 33 ms | 1152 KB |
1_17.txt | AC | 27 ms | 1152 KB |
1_18.txt | AC | 68 ms | 1920 KB |
1_19.txt | AC | 72 ms | 2048 KB |
1_20.txt | AC | 51 ms | 1664 KB |
1_21.txt | AC | 70 ms | 2048 KB |
1_22.txt | AC | 61 ms | 1792 KB |
1_23.txt | AC | 28 ms | 1024 KB |
1_24.txt | AC | 68 ms | 2048 KB |
1_25.txt | AC | 51 ms | 1664 KB |
1_26.txt | AC | 25 ms | 1024 KB |
1_27.txt | AC | 19 ms | 896 KB |
1_28.txt | AC | 32 ms | 1152 KB |
1_29.txt | AC | 48 ms | 1280 KB |
1_30.txt | AC | 66 ms | 1920 KB |
1_31.txt | AC | 74 ms | 2048 KB |
1_32.txt | AC | 25 ms | 1024 KB |
1_33.txt | AC | 71 ms | 2048 KB |
1_34.txt | AC | 30 ms | 1152 KB |
1_35.txt | AC | 17 ms | 896 KB |
1_36.txt | AC | 70 ms | 2048 KB |
1_37.txt | AC | 63 ms | 1920 KB |
1_38.txt | AC | 75 ms | 2048 KB |
1_39.txt | AC | 26 ms | 1152 KB |
1_40.txt | AC | 23 ms | 1024 KB |
1_41.txt | AC | 32 ms | 1280 KB |
1_42.txt | AC | 39 ms | 1408 KB |
1_43.txt | AC | 65 ms | 1920 KB |
1_44.txt | AC | 17 ms | 896 KB |
1_45.txt | AC | 27 ms | 1152 KB |
1_46.txt | AC | 35 ms | 1152 KB |