当前位置: 首页 > news >正文

茶叶网站制作模板东莞手工活外发加工网

茶叶网站制作模板,东莞手工活外发加工网,紫鸟浏览器,wordpress默认主题位置正题 题目链接:https://www.luogu.com.cn/problem/P4055 题目大意 n∗mn*mn∗m的网格有的不能走#xff0c;走过的不能走。开始有一个棋子先手可以决定位置#xff0c;然后后先手轮流走#xff0c;不能走的就输了#xff0c;求先手的必胜开始位置。 解题思路 我们将图二分…正题 题目链接:https://www.luogu.com.cn/problem/P4055 题目大意 n∗mn*mn∗m的网格有的不能走走过的不能走。开始有一个棋子先手可以决定位置然后后先手轮流走不能走的就输了求先手的必胜开始位置。 解题思路 我们将图二分图染色然后可以走的两两连边。如果这张图有完全匹配那么可以发现无论先手走到哪个点后手可以顺着完全匹配的边走因为这个边一定是先手没有走过的。 如果图没有完全匹配考虑胜负情况。此时对于一个匹配来说图上会有一些点删除后不会影响最大匹配如果先手选择了这些不需要的点作为起点那么后手无论走到哪先手就可以顺着最大匹配的方法走了。 现在问题是考虑如何求出所有最大匹配的不需要点我们可以先跑一遍网络流。然后从源点出发走没有流完的边这些边可以作为当前匹配没有匹配的边或者增广路然后走到的所有左边的点就是答案。而汇点同理走流完的边即可走到的右边的点就是答案。 codecodecode #includecstdio #includecstring #includealgorithm #includequeue #define p(x,y) ((x)-1)*m(y) using namespace std; const int N110*110,inf2147483647/3; const int dx[4]{1,-1,0,0},dy[4]{0,0,1,-1}; struct node{int to,next,w; }a[N3]; int n,m,s,t,tot1,ls[N],dep[N],col[N]; bool v[110][110],flag,ans[N];char st[110]; queueint q; void addl(int x,int y,int w){a[tot].toy;a[tot].nextls[x];ls[x]tot;a[tot].ww;a[tot].tox;a[tot].nextls[y];ls[y]tot;a[tot].w0;return; } bool bfs(){while(!q.empty())q.pop();q.push(s);memset(dep,0,sizeof(dep));dep[s]1;while(!q.empty()){int xq.front();q.pop();for(int ils[x];i;ia[i].next){int ya[i].to;if(dep[y]||!a[i].w)continue;dep[y]dep[x]1;if(yt)return 1;q.push(y);}}return 0; } int dinic(int x,int flow){int rest0,k;if(xt)return flow;for(int ils[x];i;ia[i].next){int ya[i].to;if(dep[x]1!dep[y]||!a[i].w)continue;rest(kdinic(y,min(a[i].w,flow-rest)));a[i].w-k;a[i^1].wk;if(restflow)return flow;}if(!rest)dep[x]0;return rest; } void dfs(int x,int c){if(dep[x])return;dep[x]1;if(col[x]c)ans[x]flag1;for(int ils[x];i;ia[i].next)if(a[i].wc)dfs(a[i].to,c);return; } int main() {scanf(%d%d,n,m);for(int i1;in;i){scanf(%s,st1);for(int j1;jm;j)v[i][j](st[j]#);}s0;tp(n,m)1;col[s]col[t]-1;for(int i1;in;i)for(int j1;jm;j){if(!v[i][j]){if((ij)1)addl(p(i,j),t,1),col[p(i,j)]0;else{addl(s,p(i,j),1),col[p(i,j)]1;for(int k0;k4;k){int xidx[k],yjdy[k];if(x1||y1||xn||ym||v[x][y])continue;addl(p(i,j),p(x,y),1);}}}}while(bfs())dinic(s,inf);memset(dep,0,sizeof(dep)); dfs(s,1);dfs(t,0);if(!flag)return printf(LOSE)0;printf(WIN\n);for(int i1;in;i)for(int j1;jm;j)if(ans[p(i,j)])printf(%d %d\n,i,j);return 0; }
http://www.pierceye.com/news/463054/

相关文章:

  • 常用博客建站程序遂溪网站开发公司
  • 网站开发软件系统安徽通皖建设工程有限公司网站
  • 意派网站开发新手篇做平面常用的网站
  • 广州网站设计费用深圳室内设计师网
  • 有什么可以做兼职的网站吗建设网站的需求分析
  • 专门做进口产品的网站6wordpress赚钱方法
  • 长兴网站建设公司郫县城乡规划建设管理局网站
  • 天津建设工程信息网站搜索引擎推广是什么工作
  • 网站的系统建设方式网站建设报价表格
  • 商城展示网站建设我劝大家不要学android
  • 官网的建站过程云南网站建设营销
  • 那个网站上有打码的任务做台州做网站的公司
  • 做公司网站 需要注意什么汕尾市住房和城建设局网站
  • 建立音乐网站网络媒体设计是什么
  • html网站怎么进入后台网站建设完成之后要索取哪些
  • 做炭化料的网站国外可以做非法网站吗
  • 厦门 网站建设 网站开发 未来网络做百科专用参考链接的网站
  • 手机网站友情链接怎么做网站轮播图
  • 网站做支付宝花呗分期设计师联盟网是谁创建的
  • 辽宁手机版建站系统开发高平市规建设局网站
  • 免费电子商务网站建设个人网站心得
  • 2003 iis网站发布网站c2g的代表性电商平台
  • 用asp做网站的可行性分析哪个网站做美食视频
  • 瓷砖网站模板建设网站虚拟主机
  • 陇西哪里能学做网站百度识图网页版在线使用
  • 如果自己弄网站书签制作 小学生 一等奖
  • 连江网站建设wordpress页面文章列表
  • 国外jquery特效网站网站建设的英语
  • 建立网站最好的模板夜蝶直播app下载安装
  • 重庆学校网站建设wordpress 模版安装