UVA - 514 Rails

Description

#include <cstdio>

using namespace std;

int a[1005] = {0}, b[1005] = {0};

int main() {
    int i, j, k, n;

    while(scanf("%d", &n) && n) {
        while(scanf("%d", &b[0]) && b[0]) {
            for(j = 1; j < n; j++)
                scanf("%d", &b[j]);
            for(i=1,j=0,k=0; i<=n&&j<n; i++,k++) {
                a[k] = i;
                while(a[k] == b[j]) {
                    if(k > 0)
                        k--;
                    else {
                        a[k] = 0;
                        k--;
                    }
                    j++;
                    if(k == -1)
                        break;
                }
            }
            if(j == n)
                printf("Yes\n");
            else
                printf("No\n");
        }
        printf("\n");
    }

    return 0;
}
发布了399 篇原创文章 · 获赞 440 · 访问量 20万+

猜你喜欢

转载自blog.csdn.net/Aibiabcheng/article/details/105479842