栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 1197 Sorting Slides

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 1197 Sorting Slides

#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>using namespace std;#define maxn 30bool MaxMatchDFS(bool g[][maxn], int m, int a, int y[], bool u[]){    for (int i=0; i<m; i++)        if (!u[i] && g[a][i])        { int t=y[i]; u[i]=true; y[i]=a; if (t==-1 || MaxMatchDFS(g, m, t, y, u)) return true; y[i]=t;        }    return false;}int MaxMatch(bool g[][maxn], int n, int m) //v1[y[i]] matches v2[i]{    int y[maxn];    memset(y, 255, sizeof(y));    int c=0;    for (int i=0; i<n; i++)    {        bool u[maxn]={0};        if (MaxMatchDFS(g, m, i, y, u)) c++;    }    return c;}bool init(bool g[][maxn], int &n){    int xmin[maxn], xmax[maxn], ymin[maxn], ymax[maxn];    int x[maxn], y[maxn];    scanf("%d", &n);    if (n==0) return false;    for (int i=0; i<n; i++)        scanf("%d%d%d%d", &xmin[i], &xmax[i], &ymin[i], &ymax[i]);    for (int i=0; i<n; i++)        scanf("%d%d", &x[i], &y[i]);    memset(g, false, sizeof(*g)*maxn);    for (int i=0; i<n; i++)        for (int j=0; j<n; j++)        { if (xmin[i]<x[j] && xmax[i]>x[j]     && ymin[i]<y[j] && ymax[i]>y[j]) g[i][j]=1;        }    return true;}int main(){    int cs=0;    int n, unique, match;     bool g[maxn][maxn];    bool found;    while (init(g, n))    {        found=false;        printf("Heap %dn", ++cs);        for (int i=0; i<n; i++)        { unique=-1;          //0:false 1:true -1:don't know match=-1; for (int j=0; j<n; j++)     if (g[i][j])     {         g[i][j]=false;         if (MaxMatch(g, n, n)==n-1)         {  if (unique==-1){unique=1;match=j;}  else {unique=0; break;}         }         g[i][j]=true;     } if (unique==1) {     if (found==false) found=true;     else printf(" ");     printf("(%c,%d)", i+'A', match+1); }        }        if (found==false) printf("nonenn");        else printf("nn");    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/378628.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号