2018 计蒜之道 初赛 第六场 贝壳找房

 #include <bits/stdc++.h>
using namespace std;
const int N=1e4+5; 
int n,m;
int a[N];
int main()
{
 memset(a,0,sizeof(a)); 
 scanf("%d",&n);
 while(n--)
 {
 
 scanf("%d",&m);
 for(int i=0;i<m;i++)
 {
 int tp; scanf("%d",&tp); 
     a[i]=tp;
 }
 sort(a,a+m); int flag=1,jud=1,j=0; 
              int k=1;
 while(j<m)
 {
 if(jud<a[j])
 {
 jud=jud+k+2; k++;
 }
 if(jud>a[j])
 {
 flag=0; break;
 }
 if(jud==a[j]&&a[j+1]!=a[j])
 {
 j++; jud=jud+k+2; k++;
 }else if(jud==a[j])
         j++;
 }  
 if(flag)printf("yes\n");
 else printf("no\n");
 }
 return 0;
 }             

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励