제출 #97628

#제출 시각아이디문제언어결과실행 시간메모리
97628KLPPPermutation Recovery (info1cup17_permutation)C++14
25 / 100
5 ms2304 KiB
#include<bits/stdc++.h>

using namespace std;
typedef long long int lld;

int main(){
	int n;
	cin>>n;
	lld Q[n];
	for(int i=0;i<n;i++)cin>>Q[i];
	lld diff[n];
	diff[0]=Q[0];
	for(int i=1;i<n;i++)diff[i]=Q[i]-Q[i-1];
	int table[n][n];
	for(int i=0;i<n;i++){
		for(int j=0;j<n;j++)table[i][j]=0;
	}
	for(int i=1;i<n;i++){
		lld x=diff[i];
		x--;
		for(int j=i-1;j>-1;j--){
			if(diff[j]<=x){
				x-=diff[j];
				table[j][i]=1;
			}else table[i][j]=1;
		}
	}
	int per[n];
	for(int i=0;i<n;i++)per[i]=1;
	for(int i=0;i<n;i++){
		for(int j=0;j<n;j++)per[i]+=table[j][i];
	}
	for(int i=0;i<n;i++)cout<<per[i]<<" ";
	cout<<endl;	
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...