1624C - Division by Two and Permutation(1100)

2022/1/14 23:33:54

本文主要是介绍1624C - Division by Two and Permutation(1100),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

#include<bits/stdc++.h>
using namespace std;
int vis[10005],a[10005],t,n;
int main(){
    scanf("%d",&t);
    while(t--){
    bool flag = true;
        scanf("%d",&n);
        for(int i=1;i<=n;i++){
            scanf("%d",&a[i]);
        }
        memset(vis,0,sizeof(vis));    
        for(int i=1;i<=n;i++){
            while(a[i]!=0&&(a[i]>n||vis[a[i]]==1)){
                a[i]/=2;
            }    
            if(a[i]==0){
                flag=false;
                break;
            }
            vis[a[i]]=1;                
        }
        if(flag) printf("YES\n");
        else printf("NO\n");
    }    
}

 



这篇关于1624C - Division by Two and Permutation(1100)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程