zoukankan      html  css  js  c++  java
  • 【PAT甲级】1128 N Queens Puzzle (20分)

    题意:

    输入一个正整数K(<=200),接着输入K行,第一个数为N(<=1000),后来跟着N个整数(1~N)表示第i列皇后的所在行数,所有的皇后不在一列,输出是否所有的皇后不会相互攻击。

    trick:

    N^2/2不会超时,N^2会在最后一个测试点超时。

    AAAAAccepted code:

     1 #define HAVE_STRUCT_TIMESPEC
     2 #include<bits/stdc++.h>
     3 using namespace std;
     4 int a[1007];
     5 int main(){
     6     ios::sync_with_stdio(false);
     7     cin.tie(NULL);
     8     cout.tie(NULL);
     9     int t;
    10     cin>>t;
    11     while(t--){
    12         int n;
    13         cin>>n;
    14         int flag=0;
    15         for(int i=1;i<=n;++i){
    16             cin>>a[i];
    17             for(int j=1;j<i;++j){
    18                 int temp=i-j;
    19                 int x=a[i]+temp;
    20                 int y=a[i]-temp;
    21                 if(a[j]==x||a[j]==y||a[j]==a[i])
    22                     flag=1;
    23             }
    24         }
    25         if(flag)
    26             cout<<"NO
    ";
    27         else
    28             cout<<"YES
    ";
    29     }
    30     return 0;
    31 }
  • 相关阅读:
    最近工作
    有点感受
    日子有点快
    IDEA配置spring
    IDEA配置hibernate
    mysql插入中文乱码
    深夜配置一把struts2
    IDEA 配置SSH2
    找工作的事情
    YTU 2509: 奇怪的分式
  • 原文地址:https://www.cnblogs.com/ldudxy/p/12541659.html
Copyright © 2011-2022 走看看