您的位置:首页 > 其它

UVA 10730 - Antiarithmetic?

2013-04-09 11:56 274 查看
/*

从一个给定的序列中 判断是否存在等差数列

方法 标记每个元素存在的位置,对元素从1到n进行循环 等差从1到m(m=i+j*2)循环 暴力解决

*/

#include<cstdio>

#include<cstring>

int n,num[10010];

int solve()

{

for(int i = 0; i < n; i++)

for(int j = 1; j+j+i < n; j++)

if(num[i]<num[i+j]&&num[i+j*2]>num[i+j])

{

puts("no");

return 0;

}

puts("yes");

}

int main()

{

while(scanf("%d:",&n)&&n)

{

int x;

for(int i = 0; i < n; i++)

{

scanf("%d",&x);

num[x] = i;

}

solve();

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: