# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
149810 | 2019-09-01T07:12:19 Z | GojekKawe(#3581, VinsenN, XxX, dexter) | List of Unique Integers (FXCUP4_unique) | C++17 | 0 ms | 0 KB |
#include "unique.h" std::vector<int> PickUnique (int N){ int U[N]; int left[N]; int right[N]; int k=UniqueCount(0,N-1); for(int i=0;i<N-1;i++){ left[i]=UniqueCount(0,i); } for(int i=1;i<=N-1;i++){ right[i]=UniqueCount(i,N-1); } right[0]=k; left[N-1]=k for(int i=0;i<N;i++){ U[i]=0; } if(k==left[N-2]+1){ U[N-1]=1; }; if(k==right[1]+1){ U[0]=1; }; for(int i=N-2; i>0;i--){ if(right[i]==right[i+1]+1){ if(left[i]+1==left[i-1]) U[i]=1; } }; std::vector<int> vect(U, U + sizeof(U)/sizeof(U[0])); return vect; }