zp1259.cpp

来自「浙江大学acm在线判题器代码集。 本人在浙大acm判题器上的所有代码(心血) 」· C++ 代码 · 共 55 行

CPP
55
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
#include <stdio.h>

int main(int argc, char* argv[])
{

  int n,x,s,a,i,j,t,p[1000];
  while (scanf("%d",&n) && n)
  {
    while (scanf("%d",&x) &&x)
    {
      s=x-1;
      for (j=0;j<x;j++)
        p[j]=j;
      a=x+1;

      t=1;
      for (i=1;i<n;i++)
      {
        scanf("%d",&x);
        if (t)
        if (x>=a || x==p[s])
        {
          if (x==p[s])
            s--;
          else
            if (x>=a)
            {
              for (j=a;j<x;j++)
                p[j-a+s+1]=j;
              s+=x-a;
              a=x+1;
            }
        }
        else
          t=0;
      }
      if (t)
        printf("Yes\n");
      else
        printf("No\n");
    }
    printf("\n");
  }
  return 0;
}
//---------------------------------------------------------------------------
 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?