YunYan

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一个讲的不错的blog

模板code:

vector<int>ve[N];
bool mark[N];
int  girl[N];
bool find(int x){
    for(int i=0;i<ve[x].size();i++){
        if(!mark[ve[x][i]]){
            mark[ve[x][i]]=1;
            if(girl[ve[x][i]]==0||find(girl[ve[x][i]])){
                girl[ve[x][i]]=x;
                return 1;
            }
        }
    }
    return 0;
}
void KM{
    int ans=0;
    for(int i=1;i<=n;i++){
        memset(mark,0,sizeof mark);
        if(find(i)) ans++;
    }
    cout<<ans<<endl;
}

 

posted on 2020-07-22 13:41  Target--fly  阅读(131)  评论(0编辑  收藏  举报