Codeforces 1178C. Tiles】的更多相关文章

传送门 考虑一块块填,首先 $(1,1)$ 有 $4$ 种方案 然后根据 $(1,1)$ 的右边颜色,$(1,2)$ 有两种方案,$(1,3)$ 根据 $(1,2)$ 也有两种方案... 考虑 $(2,1)$ 根据 $(1,1)$ 有两种方案,$(3,1)$ 也有两种.... 然后发现,如果我们确定了 $(1,1)$ 到 $(1,m)$ ,确定了 $(1,1)$ 到 $(n,1)$ ,那么之后所有位置都可以根据它们的左边颜色和上面颜色确定 那么方案数即为填左边一列和上边一行的方案数 那么答案整理…
Codeforces 题面传送门 & 洛谷题面传送门 首先先讲一发我的 \(n^2q\log n\) 的做法,虽然没有付诸实现并且我也深知它常数巨大过不去,但是我还是决定讲一讲(大雾 考虑设 \(f(i,j)\) 表示以 \(i,j\) 为左上角,满足其中不同颜色个数 \(\le q\) 的子正方形中大小最大的那个的边长,那么显然求出 \(f(i,j)\) 后一遍后缀和即可求出答案.于是问题转化为如何求 \(f(i,j)\).注意到一个显然的结论:\(f(i,j)\ge f(i,j-1)-1\)…
目录 @description@ @solution@ @part - 1@ @part - 2@ @accepted code@ @details@ @description@ 给定一个 n 点的树,一条简单路径的长度为这条路径所含点的个数. 现给每个点涂色,颜色编号为 1~k.要求每一条长度恰为 k 的简单路径上点的颜色互不相同. 请构造一个方案,或者判定无解. Input 第一行两个整数 n,k (2≤k≤n≤200000),表示点的个数与颜色个数. 接下来 n-1 行,每行两个整数 vi…
B. Drazil and Tiles 题目连接: http://codeforces.com/contest/516/problem/B Description Drazil created a following problem about putting 1 × 2 tiles into an n × m grid: "There is a grid with some cells that are empty and some cells that are occupied. You s…
https://vjudge.net/problem/CodeForces-516B 题意 在一个n*m图中放1*2或者2*1的长方形,问是否存在唯一的方法填满图中的‘.’ 分析 如果要有唯一的方案,那么必定存在度为一的点,因为只有这样,把这一格以及它相邻的涂掉的方案才唯一,然后可能产生新的度为一的可行点,不断更新,bfs寻找这样的点.最后检测一遍是否还有‘.'存在即可. #include<iostream> #include<cmath> #include<cstring&…
题目链接:http://codeforces.com/problemset/problem/516/B 一个n*m的方格,'*'不能填.给你很多个1*2的尖括号,问你是否能用唯一填法填满方格. 类似topsort,'.'与上下左右的'.',的相连.从度为1的点作为突破口. //#pragma comment(linker, "/STACK:102400000, 102400000") #include <algorithm> #include <iostream>…
B. Drazil and Tiles   Drazil created a following problem about putting 1 × 2 tiles into an n × m grid: "There is a grid with some cells that are empty and some cells that are occupied. You should use 1 × 2 tiles to cover all empty cells and no two ti…
题目链接: http://codeforces.com/problemset/problem/516/B 题解: 首先可以得到一个以‘.’为点的无向图,当存在一个点没有边时,无解.然后如果这个图边双联通无唯一解. 同时观察可知,只有一条边的点只有唯一一种连法,所以我们可以直接将其与其相连点从图中删除,再考虑剩下图中是否还有只有一条边的点,直到所有的结点都被删除,或剩下双联通分量以及存在没有边的结点为止. 正确性……显然吧.时间复杂度$O(n^{2})$. 代码: #include<cstdio>…
原文链接http://www.cnblogs.com/zhouzhendong/p/8990658.html 题目传送门 - CodeForces 516B 题意 给出一个$n\times m$的矩形.其中有些位置已经被覆盖. 现在让你用$1\times 2$的小矩形来覆盖其他地方,小矩形不能重叠. 如果有多种覆盖方案,或者无法把没被覆盖的地方全部覆盖,那么输出特殊信息.否则输出唯一的方案. $n,m\leq 2000$ 题解 乍一看,我还以为是经典的二分图匹配题目.但是由于$n,m$都很大,所…
Drazil created a following problem about putting 1 × 2 tiles into an n × m grid: "There is a grid with some cells that are empty and some cells that are occupied. You should use 1 × 2 tiles to cover all empty cells and no two tiles should cover each…