【51nod】2564 格子染色】的更多相关文章

[51nod]2564 格子染色 这道题原来是网络流-- 感觉我网络流水平不行-- 这种只有两种选择的可以源点向该点连一条容量为b的边,该点向汇点连一条容量为w的边,如果割掉了b证明选w,如果割掉了w证明选b 那么\(p\)的限制怎么加呢,新建一个点\(i'\),然后\(i\)往\(i'\)流一条容量为\(p\)的边 \(i'\)再向所有不合法的\(j\)连一条容量为正无穷的边,这样如果\(i\)选了\(b\),\(j\)选了\(w\),会有水流从\(i\rightarrow i' \right…
1744 格子染色  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果     题目描述 Description 有 n 条木板需要被粉刷. 每条木板被分为 m 个格子. 每个格子要被刷成红色或蓝色. 输入描述 Input Description Dizzy 每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色. 每个格子最多只能被粉刷一次. 如果 Dizzy 只能粉刷 t 次,他最多能正确粉刷多少格子? 一个格子如果未被粉…
题解 首先每个颜色出现的次数应该是一样的 \(\frac{C_{n}^{2}}{n} = \frac{n - 1}{2}\) 所以n如果是偶数那么就无解了 然后我们需要让每个点连颜色不同的四条边 只要端点是i,j,颜色是(i + j)%n就行 代码 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #incl…
题目: 注意,这题不是把一块区域的黑翻成白.白翻成黑. 是把一块区域全部翻成白或者翻成黑. 初始为全白,看能否翻出题中的情况. 我们假设翻转若干次能得到图中的形状,那么我们找出最后一次的翻转,即全W或者全B,让这一块区域置为随机.(随机可以看做B或者W中的一个) 直到把所有的这样的翻转全部找出来,置为随机. 看最后是否有一定是B的点,如果有就说明无法翻转到图中的形状,否则可以翻转. 代码: #include <iostream> #include <algorithm> #incl…
题目 有 n 个红球, m 个蓝球,从中取出 x 个红球和 y 个蓝球排成一排的得分是 rx⋅by ,其中 r0=b0=1 . 定义 f(t) 表示恰好取出 t 个球排成一排的所有可能局面的得分之和. 两个局面相同,当且仅当这两排球的个数相等,且在对应列位置上的颜色都是相同的. 小Q想知道,有多少 t (1≤t≤n+m) 使得 f(t) 是奇数,你能告诉他满足条件的 t2 之和吗? 对于样例, f(1)=2,f(2)=5,f(3)=13,f(4)=28,f(5)=50,f(6)=60 ,答案是…
题目描述 Description 有一个5*N的棋盘,棋盘中的一些格子已经被染成了黑色,你的任务是对最少的格子染色,使得所有的黑色能连成一块. 输入描述 Input Description 第一行一个整数N(<=100),接下来N行每行一个长度为5的01串,1表示所在格子已经被染成了黑色,0表示所在格子没有被染色. 输出描述 Output Description 第一行一个整数N(<=100),接下来N行每行一个长度为5的01串,1表示所在格子已经被染成了黑色,0表示所在格子没有被染色. 样例…
用红蓝两色给$3*3$的格子染色,要求每行每列每种颜色都有,则不同的染色方法_____ 分析:按红色格子数分类,1)红色3或者6个有6种.2)红色4或者5个有45种.故一共有2*(6+45)=102种.…
题意: 一个n*n 的木板 ,每个格子 都 可以 染成 白色和黄色,( 一旦我们对也个格子染色 ,他的上下左右都将改变颜色): 给定一个初始状态 , 求将 所有的 格子 染成黄色 最少需要染几次?  若 不能 染成 输出 inf. 高斯消元,写得很懵逼.慢慢理解orz. #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cmath>…
题目大意:有一个5*N(≤100)的棋盘,棋盘中的一些格子已经被染成了黑色,求最少对多少格子染色,所有的黑色能连成一块. 这题卡了我1h,写了2.6k的代码,清明作业一坨还没做啊...之前一直以为这题是插头DP,结果今天一看发现不用>_<,虽然还是状压DP. 因为只有5列,所以每行至多有3个黑色联通块,即黑,白,黑,白,黑,其他的情况都少于3个联通块了,所以我们可以把联通块标号.0表示白色,1表示1号联通块,2和3同理,所以我们可以用4进制来表示每一行的状态.则下一行的黑色若与上一行的黑色连接…
染色 链接: https://ac.nowcoder.com/acm/contest/176/A 来源:牛客网 题目描述 \(\tt{fizzydavid}\)和\(\tt{leo}\)有\(n\)个方格排成一排,每个方格初始是白色.\(\tt{fizzydavid}\)有红色染料,\(\tt{leo}\)有蓝色染料.他们共进行了\(m\)次操作,在每次操作中,\(\tt{fizzydavid}\)或者\(\tt{leo}\)会选择若干个(可以是零个)连续相邻的方格并用自己的染料给这些格子染色.…
[codevs1050]棋盘染色 2 试题描述 有一个5*N的棋盘,棋盘中的一些格子已经被染成了黑色,你的任务是对最少的格子染色,使得所有的黑色能连成一块. 输入 第一行一个整数N(<=100),接下来N行每行一个长度为5的01串,1表示所在格子已经被染成了黑色,0表示所在格子没有被染色. 输出 输出最少需要对多少个格子进行染色 输入示例 输出示例 数据规模及约定 N(<=100) 题解 状压 dp 一下.设 f(i, S) 表示考虑前 i 行,最后一行情况为集合 S 的最小代价:其中 S 是…
题面 一根长为 n 的无色纸条,每个位置依次编号为 1,2,3,-,n ,m 次操作,第 i 次操作把纸条的一段区间 [l,r] (l <= r , l,r ∈ {1,2,3,-,n})涂成颜色 i ,最后一定要把纸条涂满颜色,问最终的纸条有多少种可能的模样. 输入为两个数 n,m ,输出为你的答案 m <= n <= 1e6 题解 不考虑先前染的颜色被覆盖这件事情.如果某种颜色在最终的序列中出现了 x 次,那么我们就直接认为在染这种颜色的时候,我们只染了 x 个格子. 但这样一来每次染…
1008: [HNOI2008]越狱 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 5099  Solved: 2207 Description 监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种.如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱 Input 输入两个整数M,N.1<=M<=10^8,1<=N<=10^12 Output 可能越狱的状态数,模1000…
 50111117海岛帝国:诞辰之日 [试题描述] YSF自从上次“被盗投降”完(带着一大堆债)回去以后,YSF对“海盗”怀念至今,他想要建立一个“药师傅”海岛帝国. 今天,他要像“管理部”那样去探寻一个新大陆!由于YSF得到了“郭同学”TONY.STARK的赞助.买了好多好多“旧手机”. 从而以某种不法行为GET航拍地图一张!YSF开着热气球,踏(jiu)上(zuo)了(qi)征(le)程(meng). YSF跳伞到了一个岛上,由于YSF素有幸运儿之称,所以幸运的他降落在了最大的小岛,但是,Y…
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2132 题意:n*m的格子染色黑白,对于格子(i,j)染黑色则价值为A[i][j],白色为B[i][j].若一个格子四周不同颜色的有x个,则额外的价值为x*C[i][j].求最大价值. 思路:将格子黑白染色分成两个集合X和Y.S集合为X中的A和Y中的B,T为X中的B和Y中的A.相邻的连边为两个格子的C值之和.总权值减去最小割即是答案. struct node { int v,cap,ne…
A. Two Problems 分两题的过题情况讨论,并且数值均不大,暴力枚举. B. Game on Paper 每次给格子染色后,考虑当前格子在正方形中的位置,然后判断对应的正方形是否都已染色. C. Photographer 每个人的需求\(ax_i+by_i\),按这个值从小到大排序即可. D. Hit Ball 在没有墙体的情况下,求出末位置,然后将位置映射到\(x \in [0, 2a].z \in [0, 2b]\)内即可. E. Transportation 如果所有\(c_i\…
在组合数学中有这样一类问题,比如用红蓝两种颜色对2*2的格子染色,旋转后相同的算作一种.有多少种不同的染色方案?我们列举出,那么一共有16种.但是我们发现,3,4,5,6是同一种,7,8,9,10是用一种,11,12是同一种,13,14,15,16是同一种,也就是只有6种本质上不同的染色.小规模我们可以列举所有方案然后再选择,大规模的时候是很难列举所有方案的.下面,我们说明用Burnside引理和polay计数来解决这类问题. 一.置换群G:即指所有的置换.上面的例子中置换只有4种,即旋转0.9…
题目链接 题意: 一个n*n 的木板 ,每个格子 都 可以 染成 白色和黄色,( 一旦我们对也个格子染色 ,他的上下左右 都将改变颜色): 给定一个初始状态 , 求将 所有的 格子 染成黄色 最少需要染几次?  若 不能 染成 输出 inf. 分析: 和1222差不多,唯一的区别是这个题还要求 最短的步数,其实只需要枚举一下最后的x[][]是否为1,即是否需要按下, 由于只有无解或者解唯一,因为按的顺序是没有影响的,所以只要是有解一定唯一,而且最短的情况是每个格子只按一次, 因为按两次以后就变为…
[题意] 给N个方块排成一列.现在要用红.蓝.绿.黄四种颜色的油漆给这些方块染色.求染成红色方块和染成绿色方块的个数同时为偶数的染色方案的个数,输出对10007取余后的答案.(1<=n<=10^9). [分析] 看到这题的题目的第一想法是什么呢?我也不知道,因为还没做就知道是一道用矩阵乘法完成递推的题目了嘛!! 之前对矩阵乘法的理解不是很好,不知道可以同时推很多个元素的,于是脑子就卡了~~不写那么多乱七八糟的想法了,直接写题解吧. 当我们准备准备染第i个方块的时候,前i-1个方块已经染好颜色了…
DIV2 1000pt 题意:对于一个n*m的矩阵,每个格子都有一个颜色B或者W.对矩阵A执行以下程序后变成矩阵B.给出矩阵B,求A.(若有多种情况,输出字典序最小的).(n,m <= 16) For i = to H-: For j = to W-: //Get the current colors of cells (i,j) and (i,j+1) A = Color(i,j) , B = Color(i,j+) If (A,B) == (White, White) Then: Do no…
[题目描述] 我们憨厚的USACO主人公农夫约翰(Farmer John)以无法想象的运气,在他生日那天收到了一份特别的礼物:一张“幸运爱尔兰”(一种彩票).结果这张彩票让他获得了这次比赛唯一的奖品——坐落于爱尔兰郊外的一座梦幻般的城堡! 喜欢吹嘘的农夫约翰立刻回到有着吹嘘传统的威斯康辛老家开始吹嘘了, 农夫约翰想要告诉他的奶牛们关于他城堡的一切.他需要做一些吹嘘前的准备工作:比如说知道城堡有多少个房间,每个房间有多大.另外,农夫约翰想要把一面单独的墙(指两个单位间的墙)拆掉以形成一个更大的房间…
随便点了一套刷,这套质量挺棒的,学了不少的东西,并且碰到了很久都没有打的题目 T1 card [指针技巧] 题1 集卡片 [问题描述] lzh小时候很喜欢收集卡片,他经常要去商店购买新到的卡片. 商店出售的卡片有N张,是连续的,并且都连在一起成为一个长串,商店阿姨告诉lzh只能购买连续的一段,这一串卡片共有M种,每种卡片都有一个价格,lzh拿的钱数为V,他想花最少的钱来集齐所有种类的卡片,你能帮帮他吗? [输入格式] 第1行 三个正整数 N,M,V 第2行共M个正整数,第i个数Ti表示第i种卡片…
1479: [Nerrc1997]Puncher打孔机 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 22  Solved: 14[Submit][Status][Discuss] Description 打孔机是一种在票上打孔的装置, 假设票是一个M*N的矩阵,矩阵行列间距相等,你可以选择在M*N个位置上打穿或不打穿,这样就有 2^(M*N)-1(至少要打一个孔)不同的方案数. 但是我们的问题并不是这么简单的,如果两种方案经过如下的若干操作后,打穿…
Painter's Problem Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 5352   Accepted: 2588 Description There is a square wall which is made of n*n small square bricks. Some bricks are white while some bricks are yellow. Bob is a painter and…
题目描述 给定一个01矩阵,其中你可以在0的位置放置攻击装置.每一个攻击装置(x,y)都可以按照“日”字攻击其周围的 8个位置(x-1,y-2),(x-2,y-1),(x+1,y-2),(x+2,y-1),(x-1,y+2),(x-2,y+1), (x+1,y+2),(x+2,y+1)求在装置互不攻击的情况下,最多可以放置多少个装置. 输入 第一行一个整数N,表示矩阵大小为N*N.接下来N行每一行一个长度N的01串,表示矩阵. 输出 一个整数,表示在装置互不攻击的情况下最多可以放置多少个装置.…
原题链接 和棋盘覆盖(题解)差不多.. 同样对格子染色,显然日字的对角格子是不同色,直接在对应节点连边,然后就是二分图最大独立集问题. #include<cstdio> #include<cstring> using namespace std; const int N = 1e4 + 10; const int M = 2.6e7 + 10; int fi[N], di[M], ne[M], mtc[N], mo_x[8] = { -1, -2, -2, -1, 1, 2, 2,…
题意与分析 题意大致是这样的:给定一个\(n\times s\)的矩阵,每次可以随机的在这个矩阵内给一个格子染色(染过色的仍然可能被选中),问每一行和每一列都有格子被染色的次数的期望. 这题如果从概率(从正方向推)就会白给,不信你自己试试:而定义反方向的推导(\(e_{i,j}\)意为从i行j列已有染色格子到最后全被染色的次数的期望)就会非常简单:分四种情况讨论即可. 代码 #include <bits/stdc++.h> using namespace std; double e[1005]…
题目大意 有20个碗排成一排,有些碗口朝上,有些碗口朝下.每次可以反转其中的一个碗,但是在反转该碗时,该碗左右两边的碗也跟着被反转(如果该碗为边界上的碗,则只有一侧的碗被反转).求最少需要反转几次,可以使得所有碗口均朝上. 题目分析 类似黑白染色问题(将一个格子染色,其上下左右四个格子也被染成分别相反的颜色),找到规律之后可以不用进行暴力枚举搜索.     考虑最左边的那个碗,该碗要么被反转要么不被反转,只有两种可能.对于任何一种可能继续考虑:对于碗1,如果碗0口朝下,则只有碗1能够将其反转(因…
转载自:https://blog.csdn.net/whereisherofrom/article/details/79631703 Burnside引理 笔者第一次看到Burnside引理那个公式的时候一头雾水,找了本组合数学的书一看,全是概念.后来慢慢从Polya定理开始,做了一些题总算理解了.本文将从最简单的例子出发,解释Burnside引理和Polya定理.然后提供一些自己做过的和上述定理相关的题目和解题报告. Burnside引理是为了解决m种颜色给n个对象染色的计数问题. [例题1]…
一.深度优先搜索(DFS) 1.Wikioi 1066引水入城 题目描写叙述 Description 在一个遥远的国度,一側是风景秀美的湖泊,还有一側则是漫无边际的沙漠.该国的行政 区划十分特殊,刚好构成一个N行M列的矩形,如上图所看到的,当中每一个格子都代表一座城 市,每座城市都有一个海拔高度. 为了使居民们都尽可能饮用到清澈的湖水,如今要在某些城市建造水利设施.水利设施 有两种,分别为蓄水厂和输水站.蓄水厂的功能是利用水泵将湖泊中的水抽取到所在城市的 蓄水池中.因此,仅仅有与湖泊毗邻的第1行…