您的位置:首页 > 大数据 > 人工智能

uva 514 - Rails(栈)

2014-08-23 14:48 351 查看
题目链接:uva 514 - Rails

题目大意:给定n,表示有一个序列从1到n,问说通过一个栈的转换,可否形成给定序列。

解题思路:出现ai−1>ai+1且ai+1>ai的情况就不行。
#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;
const int maxn = 1005;

int N, arr[maxn];

bool judge () {
for (int i = 1; i < N - 1; i++) {
if (arr[i-1] > arr[i+1] && arr[i+1] > arr[i])
return false;
}
return true;
}

int main () {
while (scanf("%d", &N) == 1 && N) {
while (scanf("%d", &arr[0]) && arr[0]) {
for (int i = 1; i < N; i++)
scanf("%d", &arr[i]);
printf("%s\n", judge() ? "Yes" : "No");
}
printf("\n");
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: