Submission #10187083
Source Code Expand
/// https://atcoder.jp/contests/dwacon6th-prelims/tasks/dwacon6th_prelims_d
#include <bits/stdc++.h>
using namespace std;
#define in ({int x=0;int c=getchar(),n=0;for(;!isdigit(c);c=getchar()) n=(c=='-');for(;isdigit(c);c=getchar()) x=x*10+c-'0';n?-x:x;})
//mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
mt19937 rng(1);
int rnd(int l,int r){return l+rng()%(r-l+1);}
#define fasty ios_base::sync_with_stdio(0),cin.tie(0);
#define forinc(a,b,c) for(int a=b,_c=c;a<=_c;++a)
#define fordec(a,b,c) for(int a=b,_c=c;a>=_c;--a)
#define forv(a,b) for(auto&a:b)
#define fi first
#define se second
#define pb push_back
#define ii pair<int,int>
#define mt make_tuple
#define all(a) a.begin(),a.end()
#define reset(f, x) memset(f, x, sizeof(f))
#define bit(x,i) ((x>>(i-1))&1)
#define on(x,i) (x|(1ll<<(i-1)))
#define off(x,i) (x&~(1<<(i-1)))
#define gg exit(0);
const int N=100010;
int n;
int cnt[N],a[N];
set<int> st;
vector<int> ans;
void inc(int x){
ans.pb(x);
st.erase(x);
}
void dec(){
st.insert(ans.back());
ans.pop_back();
}
void dfs(int ban){
if(ans.size()==n){
forv(i,ans) cout<<i<<" ";
gg
}
if(st.count(ban) && cnt[ban]==n-ans.size())
return;
cnt[ban]--;
for(auto it=st.begin();it!=st.end();it++){
if(*it==ban) continue;
inc(*it);
dfs(a[*it]);
dec();
}
cnt[ban]++;
}
main(){
#define task "arrangement"
//freopen(task".inp","r",stdin);
//freopen(task".out","w",stdout);
if((n=in)==2) return cout<<-1,0;
forinc(i,1,n) cnt[a[i]=in]++,st.insert(i);
dfs(0);
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - Arrangement |
| User | unx |
| Language | C++14 (GCC 5.4.1) |
| Score | 800 |
| Code Size | 1644 Byte |
| Status | AC |
| Exec Time | 116 ms |
| Memory | 11008 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 800 / 800 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample_01, sample_02, sample_03 |
| All | hand2_01, hand2_02, hand2_03, hand2_04, hand_01, hand_02, hand_03, hand_04, handmaid_01, max_01, max_02, max_03, max_04, max_05, random_01, random_02, random_03, random_04, random_05, random_06, random_07, random_08, random_09, random_10, random_11, random_12, random_13, random_14, random_15, sample_01, sample_02, sample_03, small_01, small_02, small_03, small_04, small_05, special2_01, special2_02, special2_03, special2_04, special2_05, special2_06, special2_07, special2_08, special2_09, special2_10, special_01, special_02, special_03 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| hand2_01 | AC | 1 ms | 256 KiB |
| hand2_02 | AC | 1 ms | 256 KiB |
| hand2_03 | AC | 116 ms | 10624 KiB |
| hand2_04 | AC | 115 ms | 10624 KiB |
| hand_01 | AC | 1 ms | 256 KiB |
| hand_02 | AC | 1 ms | 256 KiB |
| hand_03 | AC | 58 ms | 11008 KiB |
| hand_04 | AC | 58 ms | 11008 KiB |
| handmaid_01 | AC | 1 ms | 256 KiB |
| max_01 | AC | 44 ms | 11008 KiB |
| max_02 | AC | 44 ms | 10880 KiB |
| max_03 | AC | 44 ms | 10880 KiB |
| max_04 | AC | 45 ms | 11008 KiB |
| max_05 | AC | 44 ms | 10624 KiB |
| random_01 | AC | 1 ms | 256 KiB |
| random_02 | AC | 1 ms | 256 KiB |
| random_03 | AC | 1 ms | 256 KiB |
| random_04 | AC | 1 ms | 256 KiB |
| random_05 | AC | 1 ms | 256 KiB |
| random_06 | AC | 1 ms | 256 KiB |
| random_07 | AC | 1 ms | 256 KiB |
| random_08 | AC | 1 ms | 256 KiB |
| random_09 | AC | 1 ms | 256 KiB |
| random_10 | AC | 1 ms | 256 KiB |
| random_11 | AC | 1 ms | 256 KiB |
| random_12 | AC | 1 ms | 256 KiB |
| random_13 | AC | 1 ms | 256 KiB |
| random_14 | AC | 1 ms | 256 KiB |
| random_15 | AC | 1 ms | 256 KiB |
| sample_01 | AC | 1 ms | 256 KiB |
| sample_02 | AC | 1 ms | 256 KiB |
| sample_03 | AC | 1 ms | 256 KiB |
| small_01 | AC | 1 ms | 256 KiB |
| small_02 | AC | 1 ms | 256 KiB |
| small_03 | AC | 1 ms | 256 KiB |
| small_04 | AC | 1 ms | 256 KiB |
| small_05 | AC | 1 ms | 256 KiB |
| special2_01 | AC | 85 ms | 10624 KiB |
| special2_02 | AC | 76 ms | 10624 KiB |
| special2_03 | AC | 75 ms | 10624 KiB |
| special2_04 | AC | 81 ms | 10624 KiB |
| special2_05 | AC | 112 ms | 10624 KiB |
| special2_06 | AC | 90 ms | 11008 KiB |
| special2_07 | AC | 78 ms | 11008 KiB |
| special2_08 | AC | 79 ms | 11008 KiB |
| special2_09 | AC | 79 ms | 11008 KiB |
| special2_10 | AC | 93 ms | 11008 KiB |
| special_01 | AC | 1 ms | 256 KiB |
| special_02 | AC | 3 ms | 768 KiB |
| special_03 | AC | 45 ms | 11008 KiB |