AOJ 0033

来源:互联网 发布:45号钢原料重量算法 编辑:程序博客网 时间:2024/05/22 03:48
```    //dfs深度搜索#include<iostream>#include<cstdio>using namespace std;int x[15],l[15],r[15];int kase;void dfs(int i,int j,int k){    if(i>10){        kase=1;        return;    }    if(x[i]>l[j-1]){        l[j]=x[i];        dfs(i+1,j+1,k);    }    if(x[i]>r[k-1]){        r[k]=x[i];        dfs(i+1,j,k+1);    }}int main(){int t;scanf("%d",&t);while(t--){    for(int i=1;i<=10;i++)scanf("%d",&x[i]);    kase=0;    dfs(1,1,1);    if(kase)printf("YES\n");    else printf("NO\n");}    return 0;}
//二进制枚举#include<cstdio>int N;int a[100];int left[100],right[100];bool flag;int main(){    scanf("%d",&N);    while(N--)    {        for(int i=0; i<10; i++) scanf("%d",&a[i]);        for(int i=0; i<1<<10; i++)        {            int l=0,r=0;            flag=true;            for(int j=1,x=0; j<1<<10; j<<=1,x++)            {                if(i&j)left[l++]=a[x];                else right[r++]=a[x];                if((l>=2&&left[l-1]<=left[l-2])||(r>=2&&right[r-1]<=right[r-2]))                {                    flag=false;                    break;                }            }            if(flag)break;        }        if(flag)printf("YES\n");        else printf("NO\n");    }    return 0;}
原创粉丝点击