본문 바로가기
IT/BOJ

백준(BOJ) 15805 트리 나라 관광 가이드 **

by 빨강자몽 2018. 6. 15.

# 단순 구현 # 자료 구조


흠... 설명할 말이 읍다...


#include <iostream> #include <vector> #define MAX 200005 #pragma warning(disable:4996) using namespace std; int n,m,c=0,mem[MAX]; vector<int> v; bool tf[MAX]; int main() { fill_n(&mem[0],MAX,-1); scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%d",&m); c=max(c,m); if(tf[m]==false) { v.push_back(m); tf[m]=true; } else while(v.back()!=m) { mem[v.back()]=m; v.pop_back(); } } printf("%d\n",c+1); for(int i=0;i<=c;i++) printf("%d ",mem[i]); return 0; }