제출 #1250826

#제출 시각아이디문제언어결과실행 시간메모리
1250826hmms127곤돌라 (IOI14_gondola)C++20
25 / 100
5 ms584 KiB
#include <bits/stdc++.h> #include "gondola.h" #define pb push_back using namespace std; int valid(int n, int a[]) { int idx; for(int i=0;i<n;i++){ if(a[i]==1){idx=i;break;} } int sm=0; for(int i=idx;i<n;i++)sm+=a[i]; int sz=n-idx; return (sm==sz*(sz+1)/2); } //---------------------- int replacement(int n, int a[], int replacementSeq[]) { vector<array<int,2>>v; int f=0; for(int i=0;i<n;i++){ if(a[i]<=n){ f=i-(a[i]-1); f+=(f<0 ? n:0);break; } } for(int i=0;i<n;i++){ if(a[i]>n)v.pb({a[i],i}); } sort(v.begin(),v.end()); int cnt=0,idx=0,cur_val=n; for(auto it:v){ int x=it[1]-f+1; x+=(x<0 ? n:0); replacementSeq[idx++]=x; cur_val++; while(cur_val<it[0]){ replacementSeq[idx++]=cur_val++; cnt++; } } return cnt; } //---------------------- int countReplacement(int n, int a[]) { int cnt=0,mx=0; for(int i=0;i<n;i++){ cnt+=(a[i]>n); mx=max(mx,a[i]); } return (cnt==3 ? 1:(cnt==2&&mx==n+3 ? 2:1)); }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...