zoukankan      html  css  js  c++  java
  • 洛谷1640 bzoj1854游戏 匈牙利就是又短又快

    bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个“大牛分站”,就转回洛谷做题了

    水题先行,一道傻逼匈牙利

    其实本来的思路是搜索然后发现写出来类似于匈牙利(⊙o⊙)

    (匈牙利的复杂度惊人,1e6秒过)

     1 #include <cstdio>
     2 bool b[3000001];
     3 int c[3000001],fir[3000001],to[3000001],nex[3000001];
     4 int N,n,p,q;
     5 void add(int p,int q)
     6 {
     7     nex[++N]=fir[p];to[N]=q;fir[p]=N;
     8 }
     9 bool find(int k)
    10 {
    11     b[k]=true;
    12     for(int i=fir[k];i;i=nex[i])
    13     if(!c[to[i]]) {    c[to[i]]=k;b[k]=false;return true;}
    14     else 
    15     if(!b[c[to[i]]] && find(c[to[i]]))
    16     {
    17         c[to[i]]=k;b[k]=false;return true;
    18     }
    19     b[k]=false;
    20     return false;
    21 }
    22 int main()
    23 {
    24     scanf("%d",&n);
    25     for(int i=1;i<=n;i++)
    26     {
    27         scanf("%d%d",&p,&q);
    28         if(p<=n)    add(p,i+n);
    29         if(q<=n)    add(q,i+n);
    30     }
    31     for(int i=1;i<=n;i++)
    32         if(!find(i))
    33         {
    34             printf("%d",i-1);
    35             return 0;
    36         }
    37     printf("%d",n);
    38     return 0;
    39 }

    现在感觉洛谷的界面比bzoj不知道友好到哪里去了

  • 相关阅读:
    python解析本地HTML文件
    爬取潇湘书院首页侧边栏
    Python文件的读取写入操作
    Python错误和异常
    Python字典
    python列表
    电文加密小程序
    课后练习题随笔(一)
    Redis基础操作
    Django学习_BBS开发
  • 原文地址:https://www.cnblogs.com/wanglichao/p/5931723.html
Copyright © 2011-2022 走看看