| ||||||||||
Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
再贴个代码#include <cstdio> #include <stack> using namespace std; int main() { stack<int>de; int n,s[1001],right,i,j; bool flag[1001]; while(scanf("%d",&n)&&n) { while(scanf("%d",&s[1])&&s[1]) { for(i=2;i<=n;++i) scanf("%d",&s[i]); memset(flag,0,sizeof(flag)); while(!de.empty()) de.pop(); right=1; bool flag1=0; for(i=1;i<=n;++i) { if(!flag[s[i]]) //未入栈 { for(j=right;j<=s[i];++j) de.push(j),flag[j]=1; right=s[i]+1; } else if(s[i]!=de.top()) { flag1=1; break; } de.pop(); } if(flag1) puts("No"); else puts("Yes"); } puts(""); } return 0; } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator