zoukankan      html  css  js  c++  java
  • 103 Stacking Boxes

    描述:像刘汝佳书上一样需要转化成有向图,然后再统计路最长的就可以了
    #include <cstdio>
    #include <cstring>
    #include <cstdlib>
    #define N 32
    int n,m,sum;
    int num[N][12],s[N],pos[N];
    bool next[N][N];
    int cmp(const void *p1,const void *p2)
    {
        return *(int *)p1 - *(int *)p2;
    }
    void dfs(int cur,int count)
    {
        int c=0;
        for(int i=1; i<=n; i++)
            if(next[cur][i])
            {
                s[count]=i;
                c=1;
                dfs(i,count+1);
            }
        if(!c&&count>sum)
        {
            sum=count;
            for(int i=0; i<count; i++) pos[i]=s[i];
        }
    }
    int main()
    {
      //  freopen("a.txt","r",stdin);
        while(scanf("%d %d",&n,&m)!=EOF)
        {
            memset(next,false,sizeof(next));
            for(int i=1; i<=n; i++)
            {
                for(int j=0; j<m; j++) scanf("%d",&num[i][j]);
                qsort(num[i],m,sizeof(int),cmp);
                for(int j=1; j<i; j++)
                {
                    int flag=0;
                    for(int k=0; k<m; k++)
                        if(num[i][k]>num[j][k]) continue;
                        else flag=1;
                    if(!flag) next[j][i]=true;
                    else
                    {
                        flag=0;
                        for(int k=0; k<m; k++)
                            if(num[j][k]>num[i][k]) continue;
                            else flag=1;
                        if(!flag) next[i][j]=true;
                    }
                }
            }
            sum=0;
            for(int i=1; i<=n; i++)
            {
                s[0]=i;
                dfs(i,1);
            }
            printf("%d\n%d",sum,pos[0]);
            for(int i=1; i<sum; i++) printf(" %d",pos[i]);
            puts("");
        }
        return 0;
    }


  • 相关阅读:
    Designing With Web Standard(一)
    再听姜育恒
    终于找到Effective C Sharp电子版了
    继续下一个题目
    想做就做,要做得漂亮
    空悲还是空杯
    整理,中庸
    分布式系统设计随想
    日志log4
    log4net更换目录
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/2999625.html
Copyright © 2011-2022 走看看