A1128
作者:互联网
看过算法笔记递归那节的n皇后,写起来很顺:
注意点:
1、题目没说给定的各个数都是不同的,只说了不会同列,但会有在同行的情况出现.
2、判断是否在对角线上的写法的原因详见p117最上方.
#include<cstdio>
#include<cstdlib>
#include<string.h>
#include<math.h>
#include<iostream>
#include<vector>
#include<set>
#include<map>
#include<stack>
#include<queue>
#include<string>
#include<algorithm>
using namespace std;
const int maxn=1010;
int main(){
#ifdef ONLINE_JUDGE
#else
freopen("1.txt","r",stdin);
#endif
int k,n,a[maxn];
scanf("%d",&k);
for(int i=1;i<=k;i++){
scanf("%d",&n);
bool flag=true;
for(int j=1;j<=n;j++){
scanf("%d",&a[j]);
if(flag){
for(int pre=1;pre<j;pre++){
if(abs(pre-j)==abs(a[pre]-a[j])||a[pre]==a[j]){ //要注意:题目没说给定的各个数都是不同的,只说了不会同列,会有在同行的情况出现
printf("NO\n");
flag=false;
break;
}
}
}
}
if(flag)printf("YES\n");
}
return 0;
}
growthmindset
发布了55 篇原创文章 · 获赞 0 · 访问量 430
私信
关注
标签:私信,growthmindset,A1128,int,maxn,文章,include 来源: https://blog.csdn.net/GwuYiFan/article/details/104094892