• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            POJ 1087 C++ (圖論)

            //題目太難懂了,建模比較困難
            //很多人把它做成二分圖
            匹配
            //但貌似用最大流也能求出來
            #include<iostream>
            #include<string>
            #include<map>
            using namespace std;
            int nr,np,na,flag,res,node;
            int arr[402][402];
            int q[1000],pre[1000],used[402];
            map <string,int> PR;

            int path(int s)
            { int u,head,tail,temp,i,j;
              head=tail=0;
              q[tail++]=s;
              used[s]=1;
              while(head<tail)
                   { temp=tail;
                     for(i=head;i<temp;i++)
                         {    u=q[i];
                              if(u==1)
                                 return 1;
                              for(j=0;j<node;j++)
                                 if(used[j]==0 && arr[u][j]>0)
                                    {pre[j]=u;
                                     used[j]=1;
                                     q[tail++]=j;
                                     }
                          }
                      head=temp;
                   }
              return 0;      
            }


            void  ford_fulkerson()
            { int i,j,u,v,min,x,y;
              min=INT_MAX;
              u=pre[1];
              v=1;
              while(u>=0)
                   {if(arr[u][v]<min)
                         min=arr[u][v];
                        v=u;
                        u=pre[u];
                   }
                
              u=pre[1];
              v=1;
              while(u>=0)
                   {   arr[u][v]=arr[u][v]-min;
                       arr[v][u]=arr[v][u]+min;
                       v=u;
                       u=pre[u];
                    }
               res=res+min;       
            }       


            int main()
            {int u,v,w,i,j;
             char str1[25],str2[25];
                   freopen("in.txt","r",stdin);
                   freopen("out.txt","w",stdout);
                     scanf("%d",&nr);
                      flag=0;
                      res=0;
                      node=2;
                      for(i=0;i<nr;i++)
                         { scanf("%s",str1);
                           if(!PR[str1])
                               PR[str1]=node++;
                           arr[0][PR[str1]]++;
                         }
                    
                     scanf("%d",&np);
                     for(i=0;i<np;i++)
                         {  scanf("%s%s",str1,str2);
                             if(!PR[str2])
                                PR[str2]=node++;
                            arr[PR[str2]][1]++;
                         }   
                    
                     scanf("%d",&na);
                     for(i=0;i<na;i++)
                         {   scanf("%s%s",str1,str2);
                             if(!PR[str1])
                                PR[str1]=node++;
                              if(!PR[str2])
                                PR[str2]=node++; 
                              arr[PR[str2]][PR[str1]]=INT_MAX;
                          }    
                      
                     while(!flag)
                         { memset(used,0,sizeof(used));
                           memset(pre,-1,sizeof(pre));
                           if(path(0))
                              ford_fulkerson();
                            else
                              flag=1;
                          }
               printf("%d\n",np-res);  
               return 0;
            }   

            posted on 2008-11-28 14:06 蝸牛 閱讀(1383) 評論(0)  編輯 收藏 引用 所屬分類: ACM ICPC

            <2008年11月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            30123456

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(1)

            隨筆分類(20)

            隨筆檔案(20)

            Favorites

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            国产精品免费久久| 亚洲色欲久久久久综合网| 久久国产乱子伦精品免费强| 亚洲中文字幕无码一久久区| 久久精品国产99久久无毒不卡| 成人精品一区二区久久| 久久久久久久久久久久久久 | 久久精品国产一区二区电影| 亚洲欧美日韩精品久久亚洲区| 亚洲香蕉网久久综合影视| 国产精品热久久无码av| 99久久精品免费看国产一区二区三区| 91精品国产高清91久久久久久| 国产999精品久久久久久| 久久精品人妻中文系列| 青青草原综合久久大伊人精品| 久久香综合精品久久伊人| 成人a毛片久久免费播放| 久久精品国产亚洲AV大全| 一本大道久久香蕉成人网| 国产成人久久久精品二区三区| 亚洲中文字幕久久精品无码喷水| 国产精品日韩深夜福利久久| 97久久超碰国产精品旧版| 久久久久久精品免费免费自慰 | 亚洲国产香蕉人人爽成AV片久久| 久久久久久久尹人综合网亚洲 | 久久国产成人| 国产精品免费看久久久香蕉| 99久久国产亚洲高清观看2024| 欧洲人妻丰满av无码久久不卡| 久久婷婷五月综合成人D啪| 久久综合久久综合久久综合| 亚洲国产美女精品久久久久∴| 日韩欧美亚洲综合久久影院Ds| 久久久精品波多野结衣| 国产高潮久久免费观看| 久久成人永久免费播放| 久久se这里只有精品| 久久九九免费高清视频| 亚洲国产天堂久久综合|