zoukankan      html  css  js  c++  java
  • FZU 2232

    ***题意:求最大匹配是否为n

    今天突然想起来吧模板改一下,然而自己得想法不对,WA了有十多次吧,看了一下题解,不需要改,套上模板就行***

    #include<stdio.h>
    #include<string.h>
    #define N 200
    
    struct node
    {
        int a, b;
    } s1[N], s2[N];
    
    int vis[N], used[N], n, G[N][N];
    
    int Hungary(int u)
    {
        if(u==0)
            return 0;
        for(int i=1; i<=n; i++)
        {
            if(!vis[i]&&G[u][i])
            {
                vis[i]=1;
                //int a;
                if(!used[i] || Hungary(used[i]))
                {
                    used[i]=u;
                    return 1;
                }
            }
        }
        return 0;
    }
    
    int main()
    {
        int T;
        scanf("%d", &T);
    
        while(T--)
        {
            scanf("%d", &n);
            for(int i=1; i<=n; i++)
                scanf("%d%d", &s1[i].a, &s1[i].b);
            for(int i=1; i<=n; i++)
                scanf("%d%d", &s2[i].a, &s2[i].b);
            memset(used, 0, sizeof(used));
            memset(G, 0, sizeof(G));
    
            for(int i=1; i<=n; i++)
            for(int j=1; j<=n; j++)
            {
                if(s1[i].b>=s2[j].a&&s1[i].a>s2[j].b)
                    G[i][j]=1;
            }
    
            int cnt=0;
            for(int i=1; i<=n; i++)
            {
                memset(vis, 0, sizeof(vis));
                if(Hungary(i))
                    cnt++;
            }
            if(cnt==n)
                printf("Yes
    ");
            else
                printf("No
    ");
        }
        return 0;
    }
  • 相关阅读:
    C#创建ActiveX
    easy-ui 中的事件触发 (tree)
    程序目录
    微信公众平台开发
    Redis分片机制
    Redis主从切换
    Redis主从复制
    Redis持久化机制
    Redis缓存击穿、缓存穿透、缓存雪崩
    Redis与数据库数据一致性
  • 原文地址:https://www.cnblogs.com/9968jie/p/5754454.html
Copyright © 2011-2022 走看看