[Atcoder AGC030C]Coloring Torus】的更多相关文章

题目大意:有$k$种颜色,要求构造出一个$n\times n$的矩阵,填入这$k$种颜色,满足对于每一种颜色,其中填充这种颜色的每一个方格,满足其相连的四个格子的颜色的个数和种类相同(对于每一种颜色而言,即不同颜色之间没有关系).要求$n\leqslant500$.$k\leqslant 1000$ 题解:这个真的只能看题解,题解神仙 先考虑$k=4a(a\in\mathbb{N^*})$,令$n=\dfrac k2$,$(x,y)$填的数为:当$x\equiv0\pmod2$是时为$(x+y)…
原文链接https://www.cnblogs.com/zhouzhendong/p/AGC030C.html 题解 才发现当时是被题意杀了. 当时理解的题意是“对于任意的 (i,j) ,颜色 i 和 颜色 j 的相邻格子对数相同”.好像当时看了样例都没有发现被题意杀…… 回归正题. 如果要构造 n = k 的,那么直接 构造一个第 i 行为 i 的就好了. 那么 n<k<=2n 呢? 我们考虑斜着的列. 如果第 i 个斜列放 i ,那么也可以达到 n = k 的目的. 如果第 i 个斜列间隔…
怎么外国都喜欢考脑筋急转弯…… 题意 输入 $k$,要求构造一个 $n\times n$ 的矩阵($n$ 自选),使得恰好用 $k$ 中颜色把每个点都染色,并且同一种颜色的格子周围 相邻的每种颜色数量都相同. 比如矩阵中有两个格子的颜色是 $4$,其中一个格子周围有三个(颜色)$3$ 和一个 $1$,那另一个格子周围也得有三个 $3$ 和一个 $1$,但周围颜色的顺序不必相同. 矩阵的第 $1$ 行上面与第 $n$ 行相连,第 $1$ 列左面与第 $n$ 列相连. $k\le 1000$,且自选…
构造题都是神仙题 /kk ARC066C Addition and Subtraction Hard 首先要发现两个性质: 加号右边不会有括号:显然,有括号也可以被删去,答案不变. \(op_i\)和\(A_{i+1}\)之间只会有一个括号:有多个括号的话只保留最外边那个,答案不变. 然后就可以定义状态:\(dp_{i,j}\)表示前\(i\)个数,还有\(j\)个未闭合的左括号,得到的最大答案. 由于只有减号右边有括号,所以只要知道左边有几个未闭合的左括号,就可以知道自己的贡献是\(1\)还是…
颓!颓!颓!(bushi 前传: 贪心/构造/DP 杂题选做 贪心/构造/DP 杂题选做Ⅱ 51. CF758E Broken Tree 讲个笑话,这道题是 11.3 模拟赛的 T2,模拟赛里那道题的名字叫猛张(orz ztr),而我刚好在 11.4 把这题 A 了.乍一看好像也没啥问题,不过模拟赛时间是 2020.11.3,而我 AC 这道题的时间是 2021.11.4((( 首先看到这样的题我们肯定会想到贪心,具体来说我们 DFS 一遍整棵树,DFS 到一个节点 \(x\) 时,我们考虑用最…
第一次套刷AtCoder 体验良好 传送门 Poisonous Cookies cout<<b+min(c,a+b+); Tree Burning 难度跨度有点大啊 可以证明当第一次转向之后,接下来每次的方向都和前一次相反 因为转向后再往相同方向走一定不如初始就往该方向走然后转两次向 枚举初始往哪个方向走以及走几步,前缀和优化即可 #include<ctime> #include<cmath> #include<cstdio> #include<cst…
A - Poisonous Cookies 有毒还吃,有毒吧 #include <bits/stdc++.h> #define fi first #define se second #define pii pair<int,int> #define mp make_pair #define pb push_back #define space putchar(' ') #define enter putchar('\n') #define MAXN 100005 #define e…
A - Poisonous Cookies 签到. #include <bits/stdc++.h> using namespace std; #define ll long long ll a, b, c; int main() { while (scanf("%lld%lld%lld", &a, &b, &c) != EOF) { ) printf("%lld\n", b + c); ); } ; } B - Tree Bur…
1. 3721 Smuggling Marbles 大意: 给定$n+1$节点树, $0$为根节点, 初始在一些节点放一个石子, 然后按顺序进行如下操作. 若$0$节点有石子, 则移入盒子 所有石子移向父亲节点 把所有不少于$2$个石子的节点的石子丢掉 若树上还有石子,则返回第一步 对于所有$2^{n+1}$种初始放石子的方案, 求出最后盒子中石子总数之和. 长链剖分, 这道以后再写 2. 3727 Prefix-free Game 两个串$s,t$合法要满足 $s$不为$t$的前缀且$t$不为…
A - Poisonous Cookies 题意 有\(A\)个能解毒的普通饼干,\(B\)个能解毒的美味饼干,\(C\)个有毒的美味饼干,求最多能吃多少个美味饼干,每次吃完有毒的饼干后要解毒后才能继续吃. 题解 输出\(\text{min(A + B + 1, C) + B}\)即可. 代码 #include <bits/stdc++.h> using namespace std; int main() { int a, b, c; cin >> a >> b >…
地址:http://arc080.contest.atcoder.jp/tasks/arc080_b 题目: D - Grid Coloring Time limit : 2sec / Memory limit : 256MB Score : 400 points Problem Statement We have a grid with H rows and W columns of squares. Snuke is painting these squares in colors 1, 2…
B - RGB Coloring 求ax + by = k (0<=x<=n && 0<=y<=n)的方案数,最后乘上C(n, x)*C(n,y) 代码: #include<bits/stdc++.h> using namespace std; #define fi first #define se second #define pi acos(-1.0) #define LL long long #define mp make_pair #define…
[题意]给定h,w,d,要求构造矩阵h*w满足任意两个曼哈顿距离为d的点都不同色,染四色. [算法]结论+矩阵变换 [题解] 曼哈顿距离是一个立着的正方形,不方便处理.d=|xi-xj|+|yi-yj| 将矩阵旋转45°,转为切比雪夫距离(正方形).d=max{|xi-xj|,|yi-yj|} (图片来自Atcoder editorial) 定义旋转后的每个点坐标为(x-y,x+y).(实际处理中x-y+10000避免负数) 将新坐标按d划分区域,就可以发现每个点必须和八连通的块异色,如下图.…
题目传送门:https://arc073.contest.atcoder.jp/tasks/arc073_c 题目翻译 给你\(N\)个袋子,每个袋子里有俩白球,白球上写了数字.对于每一个袋子,你需要把袋子里的球染色成一个红色和一个蓝色,求出\((R_{mx}-R_{mn})*(B_{mx}-B_{mn})\)的最小值.其中\(R_{mx}\)表示红球的最大值,\(R_{mn}\)表示红球的最小值.蓝球同理.\(N\leqslant 2*10^5\) 题解 分情况讨论.假设最小值是红色,最大值是…
http://arc061.contest.atcoder.jp/tasks/arc061_b 题意: H行W列的矩阵中,然后挖了n个洞,输出j(0-9)行,对于第i行输出,有多少个3*3区域中有i个洞: 思路: 对于一个黑色的格子,只有9个3*3的矩阵才能包含他. 所以只有处理m个黑格子就行了. 对于每个黑格子,我默认把3*3的左上角代表这个矩阵. 这样还不够,因为没有那么大的矩阵表示方法,所以换一个表示就是把矩阵中每个格子标记: 处理一下,最后输出就好了: #include <bits/st…
C - 4-adjacent Time limit : 2sec / Memory limit : 256MB Score : 400 points Problem Statement We have a sequence of length N, a=(a1,a2,…,aN). Each ai is a positive integer. Snuke's objective is to permute the element in a so that the following conditi…
Problem Statement We have a board with a 2×N grid. Snuke covered the board with N dominoes without overlaps. Here, a domino can cover a 1×2 or 2×1 square. Then, Snuke decided to paint these dominoes using three colors: red, cyan and green. Two domino…
Problem Statement We have a grid with H rows and W columns. At first, all cells were painted white. Snuke painted N of these cells. The i-th ( 1≤i≤N ) cell he painted is the cell at the ai-th row and bi-th column. Compute the following: For each inte…
题意 小 \(\mathrm{C}\) 很喜欢二维染色问题,这天他拿来了一个 \(w × h\) 的二维平面 , 初始时均为白色 . 然后他在上面设置了 \(n\) 个关键点 \((X_i , Y_i)\) , 对于每个关键点他会选择进行下列操作的一个 : 将 \(x > X_i\) 的部分染成黑色. 将 \(x < X_i\) 的部分染成黑色. 将 \(y > Y_i\) 的部分染成黑色. 将 \(y < Y_i\) 的部分染成黑色. 现在让你 , 最大化所有操作结束之后白色部分…
传送门 就是给出一个矩形,上面有一些点,让你找出一个周长最大的矩形,满足没有一个点在矩形中. 这个题很有意思. 考虑到答案一定会穿过中线. 于是我们可以把点分到中线两边. 先想想暴力如何解决. 显然就是枚举矩形的上下边的坐标然后求两边的最大宽度. 用单调栈搞一下这样的效率是O(n2)O(n^2)O(n2)的. 考虑继续优化. 干脆我们只枚举一条边,另外一条用线段树维护最值. 代码: #include<bits/stdc++.h> #define N 300005 #define lc (p&l…
传送门 谁能想到这道题会写这么久. 本来是一道很sb的题啊. 就是每次选一个点只会影响到周围的九个方格,随便1e9进制就可以hash了,但是我非要作死用stl写. 结果由于技术不够高超,一直调不出来. 然后换成1e9进制的hash发现一直WA. 感觉是long long与int之间卡出了一点问题吧. 然后调了半天终于调过了. 代码: #include<bits/stdc++.h> #define N 100007 using namespace std; int n,h,w,n0,tot=0,…
一列中有两个连续的元素,那么下一列只能选择选择正好相反的填色方案(因为连续的地方填色方案已经确定,其他地方也就确定了) 我们现将高度进行离散化到Has数组中,然后定义dp数组 dp[i][j] 表示前i列的方案数,其中第i列中最小的连续元素(k-1, k)处在[ Has[j-1] + 1, Has[j] ]中间 dp[i][0] 表示没有连续元素的方案 然后更新就好了 #include <iostream> #include <cstdio> #include <cmath&…
Time Limit: 3 sec / Memory Limit: 1024 MB Score : 600600 points Problem Statement You are given a string SS of length 2N2N consisting of lowercase English letters. There are 22N22N ways to color each character in SS red or blue. Among these ways, how…
题目大意:给一个\(n\times m\)的棋盘染四种颜色,要求曼哈顿距离为\\(d\\)的两个点颜色不同.解题思路:把棋盘旋转45°,则\((x,y)<-(x+y,x-y)\).这样就变成了以(x,y)为中心,边心距为d的正方形的轮廓不能和(x,y)同色.考虑x所在的行,我们可以采用先d个为一段,换一种颜色再d个为一段,再换回原来的颜色d个一段的方式染.这样可以推广到2维,考虑以一个d*d的正方形为一个单位,然后每4个的颜色两两不同,可以发现满足条件(抄自lych_cys).Ruby是什么语言…
AtCoder Regular Contest 061 C.Many Formulas 题意 给长度不超过\(10\)且由\(0\)到\(9\)数字组成的串S. 可以在两数字间放\(+\)号. 求所有方案的数字和. 思路 \(2^{|S|-1}\)枚举加号的放置状态 代码 Many Formulas D.Snuke's Coloring 题意 在一个\(H \times W(3 \le H,W \le 10^9)\)的棋盘上,有\(N(N \le 10^5)\)个格子被染成黑色,其余格子为白色.…
A - K-City Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement In K-city, there are n streets running east-west, and m streets running north-south. Each street running east-west and each street running north-south cross each…
[arc073e]Ball Coloring(线段树,贪心) 题面 AtCoder 洛谷 题解 大型翻车现场,菊队完美压中男神的模拟题 首先钦定全局最小值为红色,剩下的袋子按照其中较大值排序. 枚举前面连续的一段是什么颜色,那么此时我们就知道了两种颜色的\(max\),那么只需要考虑蓝色的\(min\)就好了. 答案拆开后变成了\(R_{max}*B_{max}+R_{min}*B_{min}-R_{min}B_{max}-R_{max}B_{min}\). 此时前三项已知,只需要求最后一项的最…
题目链接:http://abc069.contest.atcoder.jp/assignments A - K-City Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement In K-city, there are n streets running east-west, and m streets running north-south. Each street running east-w…
前言: 因为要普及了,今年没一等就可以退役去学文化课了,所以暑假把历年noip普及组都刷了一遍,离noip还有50+天,想弄点强化训练什么的. 想了想,就这些天学文化课之余有空就把AtCoder之前那些ARC 的 C D E 什么的刷一下吧(一般是D,可能会有简单一点的E和难一点的C)(可能会很慢,毕竟基本有时间也就周末了) 所以就开了这个坑鞭策一下自己,上个坑是dp的,开了50题,补的巨累...这次吸取教训,只开20题...(也没那么多时间去刷题了) 不会说题意,题意的话可以上网找或者去原站看…
鉴于Codeforces和atcoder上有很多神题,即使发呆了一整节数学课也是肝不出来,所以就记录一下. AGC033B LRUD Game 只要横坐标或者纵坐标超出范围就可以,所以我们只用看其中一维就可以了. 我们又知道,如果先手想要让它从左边出去,那么先手就会一直Left,后手就会一直Right. 所以枚举四种情况(L,R,U,D)就可以了. AGC033C Removing Coins 首先我们考虑链的情况,如果选的是端点,那么有一个点没有硬币,如果选的不是端点,那么有两个点没有硬币.所…