breeding magic 878d cf

CF765E Tree Folding

[题目链接](https://codeforces.com/problemset/problem/765/E "题目链接") ## 题意 给出一颗无根树,你可以钦定一个根,并进行若干次下述操作: * 选择一个点 $v$,以及 $v$ 延伸出去的两条长度相同的路径(两条路径没有重叠的边)。删去其中任意 ......
Folding 765E Tree 765 CF

【CF1503A】Balance the Bits(构造)

**题目大意:** *** ```cpp #include using namespace std; typedef long long ll; ll n; char s[200000+10]; char a[200000+10],b[200000+10]; int main(){ ios::syn ......
Balance 1503A 1503 Bits the

CF1615F O(n) solution

$O(n)$ 做法,目前 CF 最优解。 首先,考虑如何计算两个串的答案。 把奇数位置的值取反,那每次操作相当于 $01\to10$ 或 $10\to 01$。于是当两个串 $1$ 的个数相等时可以达成。 可以看作若干个 $1$ 在一条链上移动到新的位置。答案为距离之和,把移动贡献均摊到每条边上,那 ......
solution 1615F 1615 CF

【题解】Educational Codeforces Round 154 A-E(CF1861)

感觉很不在状态啊,竟然没做出来 E。 ## A.Prime Deletion ### 题目描述: 质数是一个正整数,它正好有两个不同的正除数 $1$和整数本身。例如,$2$、$3$、$13$和$101$是质数;$1$、$4$、$6$和$42$不是质数。 给你一个从$1$到$9$的数字序列,其中**从 ......
题解 Educational Codeforces Round 1861

CF1864D 题解

# CF1864D Matrix Cascade 题解 ## Links [洛谷](https://www.luogu.com.cn/problem/CF1864D) [Codeforces](codeforces.com/problemset/problem/1864/D) ## Descript ......
题解 1864D 1864 CF

CF477E Dreamoon and Notepad

# CF477E Dreamoon and Notepad key:分类讨论;贪心;拆贡献、放缩等思想。 ## Solution ~~简要~~ 写一下分类讨论,防止写代码的时候脑子不清晰。参考了 [这篇](https://www.luogu.com.cn/blog/_post/567771) 题解。 ......
Dreamoon Notepad 477E 477 and

【CF1542C】Strange Function(数论)

**题目大意:** *** ```cpp #include using namespace std; typedef long long ll; const ll mod=1e9+7; ll n; ll lcm(ll x,ll y){ return x/__gcd(x,y)*y; } int mai ......
数论 Function Strange 1542C 1542

CF1174E Ehab and the Expected GCD Problem 题解

## 题意 对于一个排列 $p$,定义 $g$ 为 $p$ 的前缀最大公约数序列,即 $g_i = \gcd\limits_{j = 1}^{i} p_j$。定义 $f(p)$ 为 $g$ 的元素种类数。 给定 $n$,求长度为 $n$ 的且使得 $f(p)$ 取最大值的排列个数,对 $10^9 + ......
题解 Expected Problem 1174E 1174

CF997E Good Subsegments

## 简要题意 一个好区间是其中数在值域上连续的区间,给定 $n$ 的排列,每次给定一个区间,问其中有多少好的子区间。 数据范围:$1\le n\le 120000$。 ## 做法 只有整体询问的版本是 Cupboard Monsters。值域上连续当且仅当区间最大值减最小值等于区间长度,考虑维护最 ......
Subsegments 997E Good 997 CF

【CF1327C】Game with Chips(构造)

**题目大意:** *** ```cpp #include using namespace std; typedef long long ll; ll n,m,k; ll sx[200+10],sy[200+10],fx[200+10],fy[200+10]; int main(){ ios::sy ......
1327C Chips 1327 Game with

CF383E Vowels

[题目链接](https://codeforces.com/problemset/problem/383/E) 拿到这题,看到求答案的方式:“平方的异或和”。这是就能想到可能有两种方式统计答案: * 直接按照他所说的去算。 算出每一种情况下的数量平方再取个异或和。 * 拆贡献 既然是平方,就无异于点 ......
Vowels 383E 383 CF

CF449D Jzzhu and Numbers

[原题链接](https://codeforces.com/problemset/problem/449/D "原题链接") 首先我们让 $c_s$ 表示有多少 $a_i$ 是 $s$ 的超集,那么有:取与后是 $s$ 的超集的集合个数 $f_s=2^{c_i}$。 再让 $g_s$ 表示有多少集合 ......
Numbers Jzzhu 449D 449 and

CF1860C Game on Permutation

[递推法解决博弈论问题。](https://codeforces.com/problemset/problem/1860/C "递推法解决博弈论问题。") 博弈论问题基本思路是先确定“状态”,即先手必胜或者先手必败。这里定义“必胜/必败”为**走到当前格子的人**的结局(赛时因为搞混了走入的人和走出 ......
Permutation 1860C 1860 Game CF

CF1288D

看到题目中有很多 $\min,\max$,一眼二分答案。 考虑一个常见的套路:假设我们二分的值是 $mid$,那么我们在判断合法性时把数字矩阵变成 $01$ 矩阵:假若 $a_{i,j}\geq mid$,则赋值为 $1$;否则为 $0$。 用了这个套路后,我们可以把一行中最小值是否 $\geq m ......
1288D 1288 CF

CF1712F Triameter 题解

## Description 你有一棵有 $n$ 个点的树,树上的每条边权值都为 $1$。现在有 $q$ 次询问,每次询问一个整数 $x$,并将叶子结点全部相连上权值为 $x$ 的边(操作不会保留)。问每次操作后图的直径是多少。图的直径定义为 $\underset{1\leq uans$ 且 $h_ ......
题解 Triameter 1712F 1712 CF

CF1864B Swap and Reverse

### 题目大意 给定一个长度为 $n$ 的字符串 $s$ 和一个整数 $k$。 你可以进行若干次操作: - 选取一个 $i$($1\le i\le n-2$),交换 $a_i$ 和 $a_{i+2}$ - 选取一个 $i$($1\le i\le n-k+1$),翻转区间 $s_{[i,i+k-1] ......
Reverse 1864B 1864 Swap and

【题解】Pinely Round 2 D,E,F(CF1863)

## D.Two-Colored Dominoes ### 题目描述: 有一个$n\times m$棋盘,被分成若干小格。棋盘上还有一些多米诺骨牌。每张骨牌覆盖相邻的两个小格(即共用一条边的两个小格),没有两张骨牌重叠。 皮特认为这块棋盘太无聊了,需要涂上颜色。他要把多米诺骨牌的格子涂成黑色和白色。 ......
题解 Pinely Round 1863 CF

【CF1528A】Parsa's Humongous Tree(树、动态规划)

**题目大意:** 给定一颗树,每个节点有两个数,为每个节点选择其中一个数,求所有相邻节点所选数之差的绝对值之和。 *** 考虑动态规划。 设$dp_{u,0}$为节点i选择较小的数,以节点$u$为根的子树对答案的贡献的最大值。 设$dp_{u,1}$为节点i选择较大的数,以节点$u$为根的子树对答 ......
Humongous 动态 1528A Parsa 1528

CF1863A Channel

## 思路 ~~最开始没看懂题意,还想了会儿。~~ 容易发现,如果某个时刻存在总人数是满的,那么一定所有人都看到了,输出 ```YES```。 否则的话,如果不算减少的人数,总人数超过了 $n$,即认为每次新增的人都是之前没看过的人(虽然最终可能会超过 $n$,不符合情况),这样的话可能所有人都看到 ......
Channel 1863A 1863 CF

CF1863B Split Sort

## 思路 对于每次操作,会把序列分成两个部分,两部分之间不会排序。 考虑仅每次排一个数字,理由如下: 假设已经排好了 $1,2,3\cdots i-1$ 的顺序,对于数字 $i$,如果 $i+1$ 在该数字的前面,那么 $k$ 应选择为 $i+1$,这样才能排好 $i$ 和 $i+1$。如果选择的 ......
1863B Split 1863 Sort CF

CF1863C MEX Repetition

## 思路 乍一看,感觉无从下手,于是就先列举了几个例子: ``` 02 10 21 02 013 201 320 132 013 12345 01234 50123 45012 34501 23450 12345 ``` 容易发现周期是 $n+1$,下面解释理由: 首先因为数量 $n$,且两两各不 ......
Repetition 1863C 1863 MEX CF

CF1863D Two-Colored Dominoes

## 思路 首先考虑保证每行的黑白数量一样,横着的一定是贡献一黑一白,所以只用考虑竖着的,同理竖着的任何方案也不会影响横着的要求。 因为两个同行的竖着的颜色可以互换,所以在满足条件的情况下,谁黑谁白无所谓。 考虑从上往下满足,因为 ```D``` 的格子已经在上一行中确定了,所以可以在上一行时就先把 ......
Two-Colored Dominoes Colored 1863D 1863

CF1826E

题意:给定一个物品序列。每个物品有 $m$ 种属性和一个收益(第 $i$ 个物品的第 $j$ 种属性为 $r_{j,i}$)。你需要从原序列中取出几个物品(可以乱序取),并给这些取出的物品安排顺序,使得新的物品序列满足:对于任意 $i,j[i 点击查看代码 ``` #include #define ......
1826E 1826 CF

【CF1395C】Boboniu and Bit Operations(贪心、位运算)

**题目大意:** 数组$a$长度为$n$,数组$b$长度为$m$,构造数组$c$满足$c[i]=a[i]\&b[j]$,求数组$c$按位或的和的最小值。 *** 设题目的答案为$ans$。 由于数组$a$和$b$的元素值小于$2^{9}$,所以数组$c$元素和$ans$在二进制表示下最多为$9$位 ......
Operations Boboniu 1395C 1395 Bit

【题解】Educational Codeforces Round 152(CF1849)

## A.Morning Sandwich ### 题目描述: 吃货小 C 喜欢三明治,他有三种材料:面包、芝士、火腿。正确的三明治组合应为一层面包和一层芝士或火腿之一轮流放置,以面包为结尾,例如面包-芝士-面包-火腿-面包就是合法的三明治。 给定每次做三明治的材料:$ b $ 面包,$ c $ 芝 ......
题解 Educational Codeforces Round 1849

CF666E Forensic Examination 题解

一、题目描述: 给你一个长度为 $n$ 模板串 $S$ 以及 $m$ 个匹配串 $T$。 $q$ 次询问,给定 $l,r,L,R$,询问 $S_l\sim S_r$ 在 $T_L\sim T_R$ 中出现次数最多的字符串编号以及最多的出现次数。 注意,若有多个出现次数最多的字符串,取编号最小的那一个 ......
题解 Examination Forensic 666E 666

【CF1374E1】Reading Books (easy version)(贪心)

**题目大意:** 给出$n(1\le n\le2\times 10^{5})$个三元组$(t,a,b)(0\le a,b\le 1)$,选出其中任意个,使得被选中的元素$a$、$b$的总和均为$k$,求$t$总和的最小值 *** 因为被选中的元素$a$、$b$的总和均为$k$,所以被选中的三元组中 ......
Reading version 1374E Books 1374

vmware16 error:inalid arch-independent ELF magic

Vmware 16.2 安装 ubuntu 22.04,提示如下: > error:inalid arch-independent ELF magic > Entering rescue mode... > grub rescue> ![image](https://img2023.cnblogs. ......

cf上如何防止unordered_map被hack

# 打cf的时候用unordered_map防止被hack可以重新自定义哈希函数 ## 第一种 ``` struct custom_hash { static uint64_t splitmix64(uint64_t x) { x ^= x > 7; x ^= x > 30)) * 0xbf5847 ......
unordered_map unordered hack map

CF1864C 题解

# CF1864C Divisor Chain 题解 ## Links [洛谷](https://www.luogu.com.cn/problem/CF1864C) [Codeforce](https://codeforces.com/problemset/problem/1864/C) ## De ......
题解 1864C 1864 CF