#include#include#include#include#include#include#define" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

UVa753/POJ1087_A Plug for UNIX(網絡流最大流)

系統 1990 0

解題報告

題意:

n個插頭m個設備k種轉換器。求有多少設備無法插入。

思路:

定義源點和匯點,源點和設備相連,容量為1.

匯點和插頭相連,容量也為1.

插頭和設備相連,容量也為1.

可轉換插頭相連,容量也為inf(由于插頭有無限個)

      #include <map>
#include <queue>
#include <cstdio>
#include <vector>
#include <cstring>
#include <iostream>
#include <algorithm>
#define inf 99999999
using namespace std;
int n,m,k,cnt,l[500],mmap[500][500],N[1000];
map<string,int >Map;
int bfs()
{
    memset(l,-1,sizeof(l));
    queue<int>Q;
    Q.push(0);
    l[0]=0;
    while(!Q.empty())
    {
        int u=Q.front();
        Q.pop();
        for(int i=0;i<=cnt;i++)
        {
            if(l[i]==-1&&mmap[u][i])
            {
                l[i]=l[u]+1;
                Q.push(i);
            }
        }
    }
    if(l[cnt]>0)return 1;
    return 0;
}
int dfs(int x,int f)
{
    if(x==cnt)return f;
    int a;
    for(int i=0;i<=cnt;i++)
    {
        if(mmap[x][i]&&l[i]==l[x]+1&&(a=dfs(i,min(f,mmap[x][i]))))
        {
            mmap[x][i]-=a;
            mmap[i][x]+=a;
            return a;
        }
    }
    return 0;
}
int main()
{
    int i,j;
    string a,b;
    cin>>n;
    cnt=1;
    for(i=0;i<n;i++)
    {
        cin>>a;
        N[cnt]=1;//cha
        Map[a]=cnt++;
    }
    cin>>m;
    for(i=0;i<m;i++)
    {
        cin>>a>>b;
        N[cnt]=2;//she
        Map[a]=cnt++;
        if(Map[b]==0)
        {
            N[cnt]=3;//new1
            Map[b]=cnt++;
        }
        int u=Map[a];
        int v=Map[b];
        mmap[u][v]=1;
    }
    cin>>k;
    for(i=0;i<k;i++)
    {
        cin>>a>>b;
        if(Map[a]==0)
        {
            N[cnt]=3;
            Map[a]=cnt++;
        }
        if(Map[b]==0)
        {
            N[cnt]=3;
            Map[b]=cnt++;
        }
        int u=Map[a];
        int v=Map[b];
        mmap[u][v]=inf;
    }
    for(i=1;i<cnt;i++)
    {
        if(N[i]==1)
        {
            mmap[i][cnt]=1;
        }
        if(N[i]==2)
        {
            mmap[0][i]=1;
        }
    }
    int ans=0,t;
    while(bfs())
        while(t=dfs(0,inf))
        ans+=t;
    cout<<m-ans<<endl;
    return 0;
}

    

A Plug for UNIX
Time Limit: ?1000MS ? Memory Limit: ?65536K
Total Submissions: ?13550 ? Accepted: ?4518

Description

You are in charge of setting up the press room for the inaugural meeting of the United Nations Internet eXecutive (UNIX), which has an international mandate to make the free flow of information and ideas on the Internet as cumbersome and bureaucratic as possible.?
Since the room was designed to accommodate reporters and journalists from around the world, it is equipped with electrical receptacles to suit the different shapes of plugs and voltages used by appliances in all of the countries that existed when the room was built. Unfortunately, the room was built many years ago when reporters used very few electric and electronic devices and is equipped with only one receptacle of each type. These days, like everyone else, reporters require many such devices to do their jobs: laptops, cell phones, tape recorders, pagers, coffee pots, microwave ovens, blow dryers, curling?
irons, tooth brushes, etc. Naturally, many of these devices can operate on batteries, but since the meeting is likely to be long and tedious, you want to be able to plug in as many as you can.?
Before the meeting begins, you gather up all the devices that the reporters would like to use, and attempt to set them up. You notice that some of the devices use plugs for which there is no receptacle. You wonder if these devices are from countries that didn't exist when the room was built. For some receptacles, there are several devices that use the corresponding plug. For other receptacles, there are no devices that use the corresponding plug.?
In order to try to solve the problem you visit a nearby parts supply store. The store sells adapters that allow one type of plug to be used in a different type of outlet. Moreover, adapters are allowed to be plugged into other adapters. The store does not have adapters for all possible combinations of plugs and receptacles, but there is essentially an unlimited supply of the ones they do have.

Input

The input will consist of one case. The first line contains a single positive integer n (1 <= n <= 100) indicating the number of receptacles in the room. The next n lines list the receptacle types found in the room. Each receptacle type consists of a string of at most 24 alphanumeric characters. The next line contains a single positive integer m (1 <= m <= 100) indicating the number of devices you would like to plug in. Each of the next m lines lists the name of a device followed by the type of plug it uses (which is identical to the type of receptacle it requires). A device name is a string of at most 24 alphanumeric?
characters. No two devices will have exactly the same name. The plug type is separated from the device name by a space. The next line contains a single positive integer k (1 <= k <= 100) indicating the number of different varieties of adapters that are available. Each of the next k lines describes a variety of adapter, giving the type of receptacle provided by the adapter, followed by a space, followed by the type of plug.

Output

A line containing a single non-negative integer indicating the smallest number of devices that cannot be plugged in.

Sample Input

      4 
A 
B 
C 
D 
5 
laptop B 
phone C 
pager B 
clock B 
comb X 
3 
B X 
X A 
X D 
    

Sample Output

      1
    


UVa753/POJ1087_A Plug for UNIX(網絡流最大流)(小白書圖論專題)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 不卡一级毛片免费高清 | 日韩国产精品99久久久久久 | 四虎影视久久久免费 | 伊人久久视频 | 亚洲综合精品成人 | 欧美亚洲国产成人高清在线 | 亚洲国产精久久久久久久 | 国产激情视频一区二区三区 | 国产日韩视频 | 狠狠操狠狠操 | a毛片成人免费全部播放 | 色综合久久综合 | 中文字幕第一页国产 | 国产亚洲精品xxx | 五月激激激综合网色播免费 | 亚洲精品第五页中文字幕 | 精品中文字幕一区二区三区四区 | 亚洲欧美小视频 | 无遮挡一级毛片视频 | 亚洲一区二区三区精品国产 | 中文字幕亚韩 | 精品一区二区三区 不卡高清 | 宅男在线影院 | 四虎在线观看免费视频 | 国产精品久久久99 | 欧美真人视频一级毛片 | 91精品国产闺蜜国产在线 | 国产主播福利在线 | 色综合成人丁香 | 久久亚洲免费视频 | 日韩欧美手机在线 | 色婷婷狠狠五月综合天色拍 | 不卡免费播放 | 免费性网站 | 国产欧美一区二区三区久久 | 中文字幕一视频97色伦 | 亚洲欧洲中文字幕 | 欧美很很干 | 性欧美xo视频在线观看 | 91久久在线| 久久日本精品99久久久久 |