1128 N Queens Puzzle (20 分)难度: 一般 / 知识点: 模拟

Posted 辉小歌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1128 N Queens Puzzle (20 分)难度: 一般 / 知识点: 模拟相关的知识,希望对你有一定的参考价值。


https://pintia.cn/problem-sets/994805342720868352/problems/994805348915855360

  • 每一个点只会出现一次
  • 任意俩点的横距离和总距离的差不会相等
#include<bits/stdc++.h>
using namespace std;
const int N=10010;
int a[N],n,t;
bool check()

    int cnt[N]=0;
    for(int i=1;i<=n;i++)
        
        if(cnt[a[i]]) return false;
        for(int j=i+1;j<=n;j++)
            if(abs(i-j)==abs(a[i]-a[j])) return false;
        cnt[a[i]]++;
    
    return true;

int main(void)

    scanf("%d",&t);
    while(t--)
    
        scanf("%d",&n);
        for(int i=1;i<=n;i++) scanf("%d",&a[i]);
        if(check()) puts("YES");
        else puts("NO");
    
    return 0;

以上是关于1128 N Queens Puzzle (20 分)难度: 一般 / 知识点: 模拟的主要内容,如果未能解决你的问题,请参考以下文章

1128 N Queens Puzzle (20 分)难度: 一般 / 知识点: 模拟

1128 N Queens Puzzle

N Queens Puzzle - 此解决方案中的回溯在哪里?

POJ 3239 -- Solution to the n Queens Puzzle

hdu 5411 CRB and Puzzle 矩阵高速幂

1128. 信使最短路