题解p9580 round game

[USACO08FEB]meteor Shower S题解(bfs)

题目描述 贝茜听说一场特别的流星雨即将到来:这些流星会撞向地球,并摧毁它们所撞击的任何东西。她为自己的安全感到焦虑,发誓要找到一个安全的地方(一个永远不会被流星摧毁的地方)。 如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并且,贝茜不能踏上一块被流星砸过的土地。 根据预报,一共有 \(M\) ......
题解 Shower meteor USACO FEB

P1457 [USACO2.1] 城堡 The Castle 题解

分析 感觉没有蓝题难度 一道 bfs 题目,相较于大部分 bfs 题,它较为复杂,但分析一下还是很好水过的。 建立墙时,可以用三维数组,\(wall_{~i, ~j, ~pos}\) 表示 第 \(i\) 行第 \(j\) 列 \(pos\) 方向有墙。 观察发现,\(8 = 2^3,4 = 2^2 ......
题解 城堡 Castle USACO2 P1457

Educational Codeforces Round 105 (Rated for Div. 2) A. ABC String

给一个长为 \(n\) 的字符串 \(a\) ,\(n\) 是偶数,字符串中只包含三种字符 \(A, B, C\) 。规定一个合法的字符串为一个符合入栈规则的字符串。 需要构造一个长为 \(n\) 的括号字符串 \(b\) 。 \(b\) 是一个合法的括号序列 \(\forall 1 \leq i ......
Educational Codeforces String Round Rated

Shuffle 题解

Shuffle 题目大意 给定一个长度为 \(n\) 的 01 序列 \(a\),你可以进行至多一次以下操作: 选定 \(a\) 的一个连续段,满足连续段内恰好有 \(k\) 个 \(1\),将该连续段任意排列。 问能产生多少种不同的 01 序列。 思路分析 (这题 \(n\) 完全可以开到 \(1 ......
题解 Shuffle

Codeforces Round 899 (Div. 2)

目录写在前面ABCDE1E2写在最后 写在前面 比赛地址:https://codeforces.com/contest/1882。 你知道我要在这里放一首由日本女歌手演唱的歌曲: 一个队友去医院一个队友军训,堂堂单刷! 感觉开场 5h 太浪费了于是找了场 div2,然后 C 不会做卡了 1h,妈的。 ......
Codeforces Round 899 Div

【多校联考NOIP#2】比赛复盘 && 题解

A. 黑白染色 这类题没有做过,第一次做,很有新意。 染色的时候,如果一个点的出边中有2个同色点,那么就有一条路中有三个同色点,是不合法的。 不妨先把所有点染成一个颜色,然后再选点染成另一个颜色。 使用一个队列,先把所有的点入队。 每次取出队头 \(u\) ,如果发现他不合法: 1.自己颜色取反 2 ......
题解 amp NOIP

【题解 P3586】 LOG

[POI2015] LOG 题目描述 维护一个长度为 \(n\) 的序列,一开始都是 \(0\),支持以下两种操作: U k a 将序列中第 \(k\) 个数修改为 \(a\)。 Z c s 在这个序列上,每次选出 \(c\) 个正数,并将它们都减去 \(1\),询问能否进行 \(s\) 次操作。 ......
题解 P3586 3586 LOG

Codeforces Round 834 (Div. 3)

Codeforces Round 834 (Div. 3) A - Yes-Yes? 思路:判断每种情况即可 #include<bits/stdc++.h> using namespace std; //#define int long long //#define int __int128 #de ......
Codeforces Round 834 Div

题解 AcWing 359.创世纪

题目描述 给你一个 \(n\) 个点 \(n\) 条边的有向图,若选了当前节点,那么当前节点的儿子节点至少有一个不能选。求最多能选多少个点。 具体思路 显然是一棵基环树,因此考虑基环树 dp。 我们先不管环的条件,先考虑朴素的树形 dp。 设 \(f_{x,0}\) 表示 \(x\) 节点不选,最多 ......
题解 创世纪 AcWing 359

CodeTON Round 5 ( Div1+Div2 ) C. Tenzing and Balls (DP)

CodeTON Round 5 ( Div1+Div2 ) C. Tenzing and Balls 思路:设f[i]为从 1~i 能删去的最多数 f[i] = max( f[i-1] , i - j + 1+ f[j-1] ) ( a[j]=a[i] , 删去i到j , 再加上前 j-1 可删去的 ......
Div CodeTON Tenzing Balls Round

【NewStarCTF 2023】题解week1

easy_RE 先exeinfo 没有壳,直接上ida 看到有关键信息,但没有显示完,按f5反编译一下 拼接一下输入,注意字符串的部分字母由近似数字代替,提交 KE 运行一下,看到是KE,想着可能是壳的意思?exeinfo看一下 upx壳,尝试upx脱壳 呃呃 权限好像不对 尝试了一下用管理员权限打 ......
题解 NewStarCTF week1 2023 week

题解 DIFERENC - DIFERENCIJA

题目描述 给出一个长度为 \(n\) 的序列 \(a_i\),求出下列式子的值: \[\sum_{i=1}^n \sum_{j=i}^n (\max \limits_{i \le k \le j} a_k-\min \limits_{i \le k \le j}a_k) \]即定义一个子序列的权值为 ......
题解 DIFERENCIJA DIFERENC

题解: CF768D Jon and Orbs

题解: CF768D Jon and Orbs 一句话体面:有k种不同的物品,每天等概率任取一种(不一定是新的种类)。q组询问,每组给出一个p,问取完这k件物品的概率不小于\(\frac{p}{2000}\)的最小天数 不用说,肯定是概率DP了 1.定义 :\(f_{i,j}\) 表示前\(i\)天 ......
题解 768D Orbs 768 Jon

Educational Codeforces Round 156 (Rated for Div. 2) - A B C D

目录A. Sum of Three A. Sum of Three 如果说给定的数为 n 如果 \(n \le 6\) 或 \(n = 9\) 时,无法分解 如果 $n %% 3 != 0 $ 时,可以 ......
Educational Codeforces Round Rated 156

CF1842G Tenzing and Random Operations 题解

题意 给定一个长度为 \(n\) 的正整数序列 \(a\),对该序列进行 \(m\) 次操作,定义每次操作如下: 从 \(\left[1, n\right]\) 中等概率选取一个 \(i\),对于 \(j \in \left[i, n\right]\),执行操作 \(a_j \leftarrow a ......
题解 Operations Tenzing Random 1842G

Educational Codeforces Round 156 A-D

A. Sum of Three 思路1: 1.把数拆成1,2,n-3 2.如果(n-3)%3==0,那么拆成1,4,n-5,可证明n-3如果可被3整除,那么再左移两位一定除不尽 思路2: 1.如果n是奇数,那么可取一个数为2,其他两数为相邻数,如果两数其中一位被整除,那么两者往外走 2.如果n为偶, ......
Educational Codeforces Round 156 A-D

p4801题解

解题思路: 确实是一道很好的贪心,但由于加上了水这个影响因素,使题目复杂度上升了不少。(考虑的东西多了嘛) 输个入。 对饼干温度无脑排序。 求最小值。 求最大值(用双指针做,后面会讲)。 解题过程: 先输入(这个步骤就不用我讲了) int a[1000005]; long long n,ws; lo ......
题解 p4801 4801

Educational Codeforces Round 156 (Rated for Div. 2)

Preface 沉迷Galgame不打CF懒狗闪总出列! 这场在大物课上口胡了前四个题,回去写了也都很顺,然后E题本来做不来的,看了眼昨天校队群里的消息就会做了 F题什么东西直接弃 A. Sum of Three 当\(n\bmod 3\ne 0\)时,用\((1,2,z)\)来凑;否则当\(n\b ......
Educational Codeforces Round Rated 156

Codeforces Round 706 (Div. 2) A. Split it!

给一个长度为 \(n\) 的字符串 \(s\) 。给定一个正整数 \(k\) 。询问 \(s\) 能否等于 \(a_1 + a_2 + \cdots + a_k + a_{k + 1} + R(a_k) + R(a_{k - 1}) + \cdots + R(a_{1})\) 。 其中 \(a_i\ ......
Codeforces Round Split 706 Div

Codeforces Round 707 (Div. 2, based on Moscow Open Olympiad in Informatics) B. Napoleon Cake

按以下 \(n\) 次操作制作蛋糕。 叠上第 \(i\) 块面包,然后浇上 \(a_i\) 单位的奶油。可以使当前往下 \(a_i\) 块面包沾上奶油。 输出空格隔开的 \(n\) 个数,第 \(i\) 个的 \(0/1\) 代表第 \(i\) 块面包是否沾有奶油。 比较显然的思路可以进行差分修改。 ......

C. Card Game

C. Card Game There are $n$ cards stacked in a deck. Initially, $a_{i}$ is written on the $i$-th card from the top. The value written on a card does no ......
Card Game

Codeforces Round 834 (Div. 3)

A. Yes-Yes? #include <bits/stdc++.h> using namespace std; #define int long long using pii = pair<int, int>; using vi = vector<int>; const string T = " ......
Codeforces Round 834 Div

Educational Codeforces Round 109 (Rated for Div. 2) B. Permutation Sort

给一个长为 \(n\) 的排列 \(a\),你可以执行以下操作:选择一个子数组并且按任意顺序重排,但这个子数组不能是数组本身。 询问最少经过多少次操作可以使得排列 \(a\) 变为升序。 定义操作次数为 \(ans\) 。 若数组已经有序,\(ans = 0\) 。 若 \(a_1 = 1\) 或者 ......

CF906C Party 题解

Party DP 是门艺术。 \(n\leq 22\) 一眼状压。但是怎么状压就比较困难,因为同一个 \(f[x]\) 可以代表成千上万种含义。 这里我们采用,设 \(f[x]\) 表示当 \(x\) 集合中所有的点都处于同一个团内的最小代价。 则我们有 \(f[x \operatorname{or ......
题解 Party 906C 906 CF

[AGC013D] Piling Up 题解

Piling Up 一个很好的思路就是设 \(f[i][j]\) 表示当前进行了 \(i\) 步,并且盒子中剩下了 \(j\) 个白球的方案数,然后直接 DP 即可。 但是这样是有问题的,它没有考虑到重复计算的问题。 我们不妨令 \(+\) 符号表示取出黑球,\(-\)符号表示取出白球。 则一种方式 ......
题解 Piling 013D AGC 013

CF1423N BubbleSquare Tokens 题解

BubbleSquare Tokens 神仙构造题。 首先,我们令所有点初始都没有放币,所有边上都放了一个币。则此时每个点的权值即为它的度数。 然后,我们考虑从小到大计算每个点的权值。对于每个点 \(i\),我们枚举它所有相邻且编号比它小的点,假如该点上没有币,就把币从连接两点的边上移到另一端的点上 ......
题解 BubbleSquare Tokens 1423N 1423

CF888F Connecting Vertices 题解

Connecting Vertices 这个奇怪的限制(两条边不能有交点)让我们想到什么? 对于任何一种方案,不存在 \(x_0<x_1<y_0<y_1\),其中连边 \((x_0,y_0),(x_1,y_1)\)。 也就是说,对于任何一段区间 \([i,j]\),如果里面所有点全都连通: 要么 \ ......
题解 Connecting Vertices 888F 888

CF53E Dead Ends 题解

Dead Ends \(n\le10\),我还是第一次见到这么小的状压 我们设 \(f[S][s]\) 表示:将集合 \(S\) 内的点连成一棵树,且集合 \(s\) 里的节点是叶子节点的方案数。 则有 \[f[S\cup\{j\}][\{s\setminus i\}\cup\{j\}]+=f[S] ......
题解 Dead Ends 53E CF

CF1178F2 Long Colorful Strip 题解

Long Colorful Strip 中间如果有那些地方看不懂,可以先去看看前面一道,这是我的题解。 首先,每一次染色,最多把一整段连续的同色格子,分成了三段。 并且,明显我们可以把连续的同色格子,直接看作一个。 这就意味着,在这么压缩后,有 \(m<2n\)。 这就意味着 \(O(m^3)\) ......
题解 Colorful 1178F Strip 1178

[ARC143D] Bridges 题解

[ARC143D] Bridges 题意:给定 \(2n\) 个点和 \((u_1,v_1) , \cdots , (u_m,v_m)\),选择让 \(u_i\) 连 \(v_i+n\) 或 \(v_i\) 连 \(u_i+n\),以最小化图中桥的个数。 有种技巧叫拆点,把一个点拆成入点和出点,看这 ......
题解 Bridges 143D ARC 143