青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 20,  comments - 13,  trackbacks - 0

解決問題:
N個男的和M個女的,已知道每個男的只能接受哪些女的,求最多能夠匹配多少對情侶?

思路:
1.只要求出有多少個男的找到對象即可。
2.遍歷所有男的,對于每個男的做以下處理(3~5),最后進入6
3.隨便找一個他能夠接受的女的,判斷這個女的是否被“挑選”過了,沒挑選過的則設置為挑選并進入4,否則繼續找下一個女的,找遍所有都是挑選過的則進入5
4.判斷這個女的是否有男朋友了,沒有就直接和上述的男的進行匹配,如果有的話(假設她的男朋友是A),則對A進行3的操作,如果該操作返回的是真,則說明這個女的可以和男的匹配,而A和另外的人匹配。返回真。
5.返回假
6.如果該男的找到女的,則最大匹配數+1.

沒說清楚,配合代碼吧,很簡單的一個模板。

#include <stdio.h>
#include 
<string.h>

int n,m;
int sum;
int p[201];
int b[201];
int map[201][201];

bool path(int cow)
{
    
int i;
    
for(i=1;i<=m;i++)
    
{
        
if(b[i]==0 && map[cow][i] == 1)
        
{
            b[i] 
= 1;
            
if(p[i]==0  || path(p[i]))
            
{
                p[i]
=cow;
                
return true;
            }

        }

    }

    
return false;
}


int main()
{
    
int i,j;
    
while(scanf("%d%d",&n,&m)!=EOF)
    
{
        sum
=0;
        memset(map,
0,sizeof(map));
        memset(p,
0,sizeof(p));
        
for(i=1;i<=n;i++)
        
{
            
int a,b;
            scanf(
"%d",&a);
            
for(j=1;j<=a;j++)
            
{
                scanf(
"%d",&b);
                map[i][b] 
= 1;
            }

        }

        
for(i=1;i<=n;i++)
        
{
            memset(b,
0,sizeof(b));
            
if(path(i))
                sum
++;
        }

        printf(
"%d\n",sum);
    }

    
return 0;
}


下面嘗試用鄰接表來解決類似的題目,但是如果不釋放內存的話,會MLE,而通過free釋放內存又會出現TLE錯誤,太囧了。。。良智說用STL的vector應該可以處理這個問題,回頭再用vector,今天先發free的做法,雖然過不了~~

 

#include <stdio.h>
#include 
<string.h>
#include 
<stdlib.h>

struct edge{
    
int to;
    edge
* next;
};

edge list[
101];

int p,n;
int par[301];
int b[301];
struct edge* temp;
struct edge* e;

bool path(int person)
{
    
struct edge* e = list[person].next;
    
while(e)
    {
        
if(b[e->to]==0)
        {
            b[e
->to] = 1;
            
if(par[e->to]==0 || path(par[e->to]))
            {
                par[e
->to]=person;
            
//    printf("%d__%d\n",e->to,par[e->to]);
                return true;
            }
        }
        e 
= e->next;
    }
    
return false;
}

int main()
{
    
int i,j;
    
int a,t2;
    
int t;
    
while(scanf("%d",&t)!=EOF)
    {
        
while(t--)
        {
            scanf(
"%d%d",&p,&n);
            {
                
int ans = 0;
                
//memset(map,0,sizeof(map));
                memset(par,0,sizeof(par));
                
for(i=1;i<=p;i++)
                {
                    scanf(
"%d",&a);
                    
//list[i] = (struct edge*)malloc(sizeof(edge));
                    struct edge* head = (&list[i]);
                    e 
= head;
                    
while(a--)
                    {
                        scanf(
"%d",&t2);
                        temp 
= (struct edge*)malloc(sizeof(edge));
                        temp
->to = t2;
                        e
->next = temp;
                        e 
= temp;
                    }
                    e
->next = NULL;
                    e 
= head;
                    
/*
                    while(e)
                    {
                        printf("%d__%d\n",e->from,e->to);
                        e=e->next;
                    }
*/
                }

                
for(i=1;i<=p;i++)
                {
                    memset(b,
0,sizeof(b));
                    
if(path(i))
                    {
                        ans
++;
                    }
                    
else
                    {
                        printf(
"NO\n");
                        
break;
                    }
                }
                
if(ans==p)
                    printf(
"YES\n");
                
for(i=1;i<=p;i++)
                {
                    e 
= list[i].next;
                    
while(e)
                    {
                        temp 
= e;
                        e
=e->next;
                        free(temp);
                    }
                }
            }
        }
    }
    
return 0;
}

posted on 2010-05-16 00:56 ACong 閱讀(199) 評論(0)  編輯 收藏 引用

<2010年5月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

常用鏈接

留言簿

隨筆檔案

文章檔案

廣商豪杰

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美一区日韩一区| 欧美大片在线看| 国产精品制服诱惑| 欧美日产在线观看| 欧美激情第一页xxx| 麻豆免费精品视频| 欧美国产日韩在线| 欧美丝袜一区二区三区| 国产精品美女在线观看| 国产欧美日韩精品一区| 精品电影一区| a4yy欧美一区二区三区| 亚洲综合首页| 猛干欧美女孩| 日韩视频免费在线观看| 午夜国产精品视频| 久热re这里精品视频在线6| 女女同性精品视频| 欧美日韩在线免费观看| 国产欧美综合一区二区三区| 在线欧美影院| 午夜精品久久久久久久蜜桃app| 红桃视频国产精品| 激情欧美日韩| 国产精品99久久久久久白浆小说 | 国产一区 二区 三区一级| 国产综合色在线| 在线亚洲国产精品网站| 久久嫩草精品久久久精品一| 亚洲精品中文字幕女同| 久久精品免费电影| 欧美日韩免费看| 雨宫琴音一区二区在线| 亚洲欧美国产77777| 亚洲国产精品激情在线观看| 亚洲第一主播视频| 性色一区二区| 欧美日韩中文字幕日韩欧美| 亚洲电影av| 久久久水蜜桃av免费网站| 99精品99| 欧美精品 国产精品| 在线成人国产| 久久久av水蜜桃| 一区二区三区福利| 欧美日韩国产限制| 亚洲精选成人| 欧美黄色一区| 欧美亚洲系列| 欧美三级在线播放| 日韩一级免费观看| 亚洲国产精品久久| 另类成人小视频在线| 国产美女精品在线| 欧美一区二区免费观在线| 99精品视频免费全部在线| 亚洲精品一区二区三| 欧美在线观看视频在线| 国产视频在线观看一区二区三区| 在线视频精品| 99在线精品视频| 蜜桃av综合| 亚洲欧洲精品一区二区精品久久久 | 这里是久久伊人| 欧美精品亚洲一区二区在线播放| 亚洲国产经典视频| 亚洲电影有码| 欧美理论电影在线观看| 一区二区日韩伦理片| 日韩视频一区二区三区| 欧美日韩国产一区精品一区| 在线综合+亚洲+欧美中文字幕| 最新日韩精品| 欧美性开放视频| 欧美在线一区二区| 久久久精品网| 亚洲精品影院| 欧美日韩精品一区二区| 久久综合伊人77777尤物| 伊人久久大香线| 亚洲国产精品va| 欧美日韩免费视频| 欧美资源在线| 另类国产ts人妖高潮视频| 亚洲麻豆av| 亚洲综合不卡| 在线国产欧美| 日韩一级精品| 国际精品欧美精品| 亚洲国产精品综合| 国产精品视频久久| 欧美成人午夜激情| 国产精品久久久久久久久久ktv| 久久国产日韩| 欧美日韩美女在线| 久久国产加勒比精品无码| 久久在线免费视频| 亚洲欧美bt| 久久香蕉精品| 亚洲欧美亚洲| 免费看亚洲片| 欧美一区免费视频| 欧美国产日韩一区二区在线观看 | 亚洲成在人线av| 亚洲精品乱码久久久久久久久| 国产精品v欧美精品v日韩精品 | 亚洲第一精品福利| 国产欧美日韩视频一区二区三区| 蜜臀91精品一区二区三区| 欧美三级电影大全| 久久天天躁狠狠躁夜夜爽蜜月| 欧美日韩第一区| 欧美肥婆在线| 国产亚洲毛片在线| 国产精品入口| 快射av在线播放一区| 国产精品成人国产乱一区| 欧美99久久| 国产在线高清精品| 亚洲一品av免费观看| 999在线观看精品免费不卡网站| 久久精品99无色码中文字幕| 亚洲一区二区三区免费观看 | 在线中文字幕日韩| 亚洲国产一区二区视频| 久久se精品一区精品二区| 亚洲永久免费av| 欧美日韩成人精品| 亚洲第一福利视频| 樱花yy私人影院亚洲| 午夜亚洲激情| 久久精品导航| 国产在线不卡精品| 久久gogo国模裸体人体| 久久久久久久999| 国产一区二区你懂的| 99在线精品视频| 在线观看精品| 久久香蕉国产线看观看网| 蜜桃av噜噜一区| 在线国产日韩| 欧美激情女人20p| 亚洲福利国产| 一区二区三区高清| 欧美精品七区| 一区二区日韩欧美| 亚洲欧美成人一区二区三区| 国产精品久久久久久久久果冻传媒| 日韩天堂在线观看| 亚洲欧美激情一区| 国产精品一区二区欧美| 午夜国产欧美理论在线播放| 久久国产福利国产秒拍| 伊人久久男人天堂| 免费看的黄色欧美网站| 亚洲老司机av| 欧美一区午夜精品| 黑人巨大精品欧美一区二区| 久久综合国产精品| 亚洲毛片网站| 欧美在线黄色| 亚洲国产精品成人| 国产精品www网站| 性欧美大战久久久久久久免费观看| 久久精品在线| 亚洲乱码国产乱码精品精| 欧美午夜视频网站| 欧美在线免费视屏| 欧美黄色精品| 欧美亚洲综合网| 伊人久久成人| 欧美午夜在线视频| 在线成人av| 亚洲国产精品久久| 亚洲在线免费观看| 激情久久综合| 欧美三级在线| 老鸭窝亚洲一区二区三区| 日韩视频―中文字幕| 国产欧美一区二区三区另类精品 | 伊人久久大香线蕉av超碰演员| 欧美激情bt| 久久精品视频亚洲| 99国产精品私拍| 麻豆精品在线视频| 亚洲视频电影在线| 激情综合色综合久久| 欧美色视频一区| 麻豆成人91精品二区三区| 亚洲一区高清| 亚洲精品自在久久| 欧美高潮视频| 久久婷婷激情| 欧美中文字幕精品| 在线中文字幕一区| 99精品免费网| 亚洲激情综合| 伊人久久av导航| 狠狠久久五月精品中文字幕| 国产精品日韩专区|