题解1203 div cf

CF1846E2 Rudolf and Snowflakes (hard version) 题解

题意: \(T\) \((\)\(1\) \(\le\) \(T\) \(\le\) \(10^4\)\()\) 组询问:是否存在一个满 \(k\) (\(k\) \(\ge\) \(2\)\()\) 叉树节点数恰好为 \(n\) \((\)\(1\) \(\le\) \(n\) \(\le\) \ ......
题解 Snowflakes version Rudolf 1846E

题解 P8061 [JSOI2016] 炸弹攻击1 - 数据加强版

本篇题解参考 @djwj223,但是本人太弱了,对着代码看了 INF 年才看懂。因此写一篇具体讲解实现方面的题解。在此先表示感谢。 思路 考虑最终的答案圆会是怎样的。第一种是半径达到了 \(R\) 的上界,不能继续扩充。显然这种情况可以把圆移动一下使某个点在圆上,以此进行计算。第二种是楼上所说的与两 ......
题解 炸弹 数据 P8061 8061

[Codeforces] CF1561C Deep Down Below

CF1561C Deep Down Below 时间限制:\(2s\) | 空间限制:\(1000MB\) 题面 题面翻译 \(T\) 组数据,每次给定 \(n\) 个任务,第 \(i\) 个任务给定 \(k_i\) 个怪物,每个怪物有一个能力值 \(a_{i,j}\) 你要按顺序把这 \(k_i\ ......
Codeforces 1561C Below 1561 Deep

CF1626E

problem 我们可以考虑什么情况下这个点一定可以到黑点。 \(c_i = 1\)。 \(c_{son} = 1\)。 儿子可以,并且儿子子树内有两个黑点 请两个不必多说,看最后一个。 假如说考虑他的儿子能到的情况的第一个选择的点,那么我们选择另外一个即可到达儿子,那么我们就可以到达黑点。 然后我 ......
1626E 1626 CF

Codeforces Round 910 (Div. 2)

https://codeforces.com/contest/1898 C题可以造一个大小为4的环,然后再造一个来回,这样就解决了%4=0,%4=2的情况,而奇数的情况显然无解。 #include<cstdio> #include<algorithm> #include<cstring> #incl ......
Codeforces Round 910 Div

Codeforces Round 829 (Div. 1)A1. Make Nonzero Sum (easy version)(思维找规律)

先考虑无解的情况:当n为奇数时无解 相邻的两个元素一定可以变成0 \[a[i] != a[i + 1]时, 分成[i, i], 和[i + 1, i + 1] \]\[a[i] = a[i + 1]时, 分成[i, i + 1] \]这两种情况对答案的贡献都是0,当n为奇数时我们总会有一个没办法凑成 ......
Codeforces 规律 思维 Nonzero version

luogu2839题解

[国家集训队] middle 题目分析 代码如下。 #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned long long ull; const int MAXN=2e4+10; in ......
题解 luogu 2839

CF1827C Palindrome Partition 题解

题目链接 点击打开链接 题目解法 首先考虑一个朴素的 \(dp\) 令 \(f_i\) 表示以 \(i\) 结尾的合法子串的个数 为了不重不漏,我们令 \(le_i\) 表示以 \(i\) 为右端点,离 \(i\) 最近的偶回文串的左端点,然后不难得到转移为 \(f_i=f_{le_i-1}+1\) ......
题解 Palindrome Partition 1827C 1827

ISCTF 逆向题解

ISCTF 逆向题解用一个晚上的时间看了看ISCTF,有的题还蛮难的(毕竟得嘎嘎猜出题人想法)CrackMewinhex打开exe,修改标识头PFX为UPX然后放进UPXshell里面试试脱了,放进ida,直接反编译得到flagEasyReexeinfo看看这个是什么64位,放进ida反编译得到一段 ......
题解 ISCTF

ICPC2022Xian L Tree 题解

Link ICPC2022Xian L Tree Question 给出一个根为 \(1\) 的树,需要将树分成几个块每个块,一个块中的节点需要满足以下条件中的一个: 对于所有的 \(u,v \in S,\ u \neq v\) ,满足 \(u \in subtree(v)\) 或 \(v \in ......
题解 ICPC 2022 Xian Tree

[ABC277G] Random Walk to Millionaire 题解

题目链接 点击打开链接 题目解法 首先 \(O(n^3)\) 的 \(dp\) 是显然的,令 \(f_{i,j,k}\) 为第 \(i\) 步在 \(j\),当前等级为 \(k\) 的 \([i,n]\) 步获得钱数的期望,转移枚举出边即可 一个很妙的优化是:贡献都是 \(k^2\) 的形式,所以我 ......
题解 Millionaire Random 277G Walk

[ARC139D] Priority Queue 2 题解

题目链接 点击打开链接 题目解法 弱化题目 考虑一个常用的转化(更多用于期望):枚举答案,将 \(=\) 变成 \(\le\) 或 \(\ge\) \(\sum\limits_{i=1}^mi\times c(x=i)=\sum\limits_{i=1}^mc(x\ge i)\) 枚举 \(i\), ......
题解 Priority Queue 139D ARC

Codeforces Round 731 Div3 A-G题解

Codeforces Round #731 (Div. 3) 在家打了好久COD和战雷,偶尔也得学习一下,要不然感觉时间都浪费了,游戏玩多了也腻,保持适当学习才能爽玩游戏。申请完了也不想做太难的题了,那么就来一场div3保持一下思维敏捷度吧。 A. Shortest Path with Obstac ......
题解 Codeforces Round Div3 731

【题解】CF1621G Weighted Increasing Subsequences

常规,但不常规。 思路来自 @gyh. 思路 BIT 优化计数。 本来考虑的是对 LIS 进行计数,得到一个对 \([]\) 形式的值套三层求和的方式,然后再瞪眼找优化方法,但是没有发现什么好的处理方法,于是只能考虑转换计数方法。 考虑通过每个位置对答案的贡献计数。假设某个位置 \(x\) 被一个合 ......

Educational Codeforces Round 158 (Rated for Div. 2)

A. Line Trip There is a road, which can be represented as a number line. You are located in the point \(0\) of the number line, and you want to travel ......
Educational Codeforces Round Rated 158

Codeforces Round 911 (Div. 2)补题C、D

Codeforces Round 911 (Div. 2) C. Anji's Binary Tree 思路 树形dp ac代码 #include <bits/stdc++.h> using namespace std; using i64 = long long; const i64 inf = ......
Codeforces Round 911 Div

CF1876D Lexichromatography 题解

题目链接 点击打开链接 题目解法 首先第二个条件等价于同一种权值红蓝交错填 可得不考虑第三个条件的方案数为 \(2^{cntcol}\),其中 \(cntcol\) 为出现过的颜色数量 考虑红蓝是等价的,所以 \(p>q\) 的方案数 \(=\) \(p<q\) 的方案数 所以我们只需要计算 \(p ......
题解 Lexichromatography 1876D 1876 CF

Codeforces Round 911 (Div. 2)

B题 假设我们考虑能不能获得1,注意到b-c的奇偶性不会改变,然后特判一下只有一个大于0就行。 #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> #include<map> #include<vector> ......
Codeforces Round 911 Div

CodeTON Round 7 (Div. 1 + Div. 2, Rated, Prizes!)

看到B官方题解写了一堆,而如果能注意到一些性质,几行就写完了 题意:给一个A,B构成的字符串,可以将“AB”翻转成"BA",问最多可以进行多少次翻转? 实际上在手动模拟以后发现,由于题目限制了每个位置只能翻转一次,所以情况简单了不少。 只要还没过最后一个B,那么最后一个B之前的所有A就会被反转。真正 ......
Div CodeTON Prizes Round Rated

CF1900D - Small GCD 题解

1900D - Small GCD 给定序列 \(A\),定义 \(f(a, b, c)\) 为 \(a, b, c\) 中最小的次小的数的 \(\gcd\),求: \[\sum_{i = 1}^n \sum_{j = i + 1}^n \sum_{k = j + 1}^n f(a_i, a_j, ......
题解 1900D Small 1900 GCD

Codeforces Round 911 (Div. 2) D

Codeforces Round 911 (Div. 2) D D. Small GCD 题意 定义\(f(a,b,c)\)为\(a,b,c\)中较小两个数的\(gcd\),给定数组\(a_{1...n}\),求\(\sum\limits_{i=1}^{n}\sum\limits_{j=i+1}^{ ......
Codeforces Round 911 Div

CF1886B Fear of the Dark

这道题只有两种情况:\(O\) 点和 \(P\) 点都在同一个圆圈里;或者 \(O\) 点在一个圆圈里,\(P\) 点在另外一个圆圈里。 让我们用 \(d(P,Q)\) 来表示 \(P\) 点到 \(Q\) 点之间的距离,\(R\) 记为半径。 我们先来看第一种情况:\(O\) 点和 \(P\) 点 ......
1886B 1886 Fear Dark the

CF992E Nastya and King-Shamans

题意 给定一个序列 \(s\),记其前缀和序列为 \(g_i\),\(q\) 次修改。 每次修改后输出任意满足 \(s_i = g_{i - 1}\) 的解。 Sol 前缀和数组,每次答案使 \(s_i \times 2\)。 也就是答案的个数不会超过 \(log\)。 再想,\(s_i - g_{ ......
King-Shamans Shamans Nastya 992E King

CodeTON Round 7 Div. 1 + 2 (CF1896)

终于把 agc 交了。 A. Jagged Swaps 模拟即可。 B. AB Flipping 显然全是 \(\texttt{B}\) 的前缀和全是 \(\texttt{A}\) 的后缀都动不了。 答案是最后一个 \(\texttt{B}\) 的位置减第一个 \(\texttt{A}\) 的位置。 ......
CodeTON Round 1896 Div CF

「杂题乱刷」CF1534C

题目链接 CF1534C Little Alawn's Puzzle 题意简述 给定两个排列 \(a,b\),你可以进行的操作为交换一列中的两个数字,你需要求出操作后能够满足没有相同数字在同一行的数阵能的个数并对 \(10^9+7\) 取模。 解题思路 我们先举两个例子: 1 2 3 4 5 1 2 ......
1534C 1534 CF

SP19543 GSS8 - Can you answer these queries VIII 题解

更好的阅读体验 SP19543 GSS8 - Can you answer these queries VIII fhq + 二项式定理。提供一个不太一样的思路。默认下标从 \(1\) 开始。 首先插入删除,区间查询,想到可以平衡树维护或者离线下来做线段树。本文中是用的是 fhq,好写一些。 \(k ......
题解 queries answer 19543 these

CodeTON Round 7 (Div. 1 + Div. 2, Rated, Prizes!)

CodeTON Round 7 (Div. 1 + Div. 2, Rated, Prizes!) A - Jagged Swaps 思路:a2到an的数只要相邻为逆序都可以交换,只需要判断a1是否为1即可 #include<bits/stdc++.h> using namespace std; # ......
Div CodeTON Prizes Round Rated

CF1009F Dominant Indices

题意 给定一棵树,求每一棵子树内距离跟最小的节点数最多的深度。 \(n \le 1e6\) Sol dsu 板子。 我们先考虑那个 \(n ^ 2\) 的 dp。 对于每一个节点 \(x\),用 \(f_i\) 表示当前在 \(x\) 子树内深度为 \(i\) 的节点有多少个。 求最大值用一个变量 ......
Dominant Indices 1009F 1009 CF

Codeforces Round 894 (Div. 3)

Codeforces Round 894 (Div. 3) A. Gift Carpet 题意:判断一列一个字母有没有“vika” 思路:挨个枚举每一列 #include<bits/stdc++.h> using namespace std; char mp[25][25]; char x[]={' ......
Codeforces Round 894 Div

Codeforces Round 903 (Div. 3)

Codeforces Round 903 (Div. 3) A. Don't Try to Count 大概题意给你两个字符串a,b。a串可进行的操作为将整个a串复制到之前的a串后面(直接用a+a即可),然后看操作多少次可以让b串变为a串的子串如果不能就输出-1。 #include <iostrea ......
Codeforces Round 903 Div