题解p4069 2016 sdoi
NC20313 [SDOI2008]仪仗队
[题目链接](https://ac.nowcoder.com/acm/problem/20313) # 题目 **题目描述** 作为体育委员,C君负责这次运动会仪仗队的训练。 仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断 ......
wmctf的题解&&blindless&&exit_hook
# 0x00 好久不见 2023.8.23 夜里 wm 2023也是一个收获很大的比赛。只做了一个blindless,但是体会到了无泄露做出题来的奥妙。踩过的坑(学到的东西)包括但不限于 | | | |--|--| | 调试要用docker,不然没符号表很痛苦 | 有想法一定要及时记下来,很有可能是 ......
P4327题解
### 思路 **分组计算** 以下图为例: ``` ..#.. .#.. .*.. .#.. .#.#. #.#. *.*. #.#. #.X.# .X.* .X.* .X.# .#.#. #.#. *.*. #.#. ..#.. .#.. .*.. .#.. ``` 我们可以发现每个图形的第1、 ......
牛客练习赛114 D题题解
~~比赛编号太臭了~~ [题目链接](https://ac.nowcoder.com/acm/contest/63804/D) 对一第一组数据,我们形象化的得到下图: ![image](https://img2023.cnblogs.com/blog/3073061/202308/3073061-2 ......
UVA10192题解
为了尽可能满足父母亲的要求,我们应该取两个字符串的最长公共子序列。 [洛谷模板题](https://www.luogu.com.cn/problem/P1439) 设 $dp_{i,j}$ 为 $a$ 串匹配到第 $i$ 位,$b$ 串匹配到第 $j$ 位时的最长公共子序列长度。 则易知 $dp_{ ......
CF498A题解
简单解析几何。 做这道题之前,你需要知道: 1. 根据两点求直线一般式。 2. 根据两条直线求交点坐标。 这里直接丢公式了,百度上也有证明过程,自己推导难度也不大。 1. 若两点坐标为 $(x_1,y_1),(x_2,y_2)$,则直线方程为:$Ax+By+C=0$,其中 $A=y_2-y_1,B= ......
AT_donuts_2015_3 题解
根据题意,发现我们要维护一个身高递减的序列。 因此,我们可以直接使用单调栈维护第 $i$ 个人能看到的人数即可。 答案就是当前栈内的元素数量。 注意应先输出答案再将当前高度入栈。 ```cpp #include int n; int h[100010]; int st[100010]; int to ......
P9166题解
简单题,但是我考场写炸了。$100\rightarrow70$。 我们读入的时候,先开两个数组 $ls,rs$ 来记录当前这个点是否为某条线段左端点或右端点。 我们发现,每一条线段都是连续的,因此可以直接差分记录当前这个点能否走到。 然后你提交上去发现你能过。 实际上这种做法是假的。 为什么呢? 如 ......
ABC296D题解
简单题。 考虑 `-1` 的情况,即为 $n^2 #include #define ll unsigned long long ll n,m; ll ans=1llm) ans=min(ans,a*b); } printf("%llu",ans); } return 0; } ``` ......
ABC020C题解
本题二分 + 搜索。 我们可以先二分出 $x$ 可能的值,再用搜索检验这个答案是否满足要求。若满足,左端点右移,否则右端点左移。 至于搜索可以用记搜加速。 注意输出要换行,否则会 WA。 ```cpp #include #include int n,m,t; char map[20][20]; in ......
CF1712C的题解
对于 $n=1$,答案显然为 $0$。 我们能很清楚一点,因为 $a_i>0$,所以当 $a_x$ 需要改为 $0$ 时, $a_1\sim a_{x-1}$ 也都必须改 $0$,这样才能使前面的满足 $a_{i-1}\le a_i$ 那我们首先得先记录每一个数出现的最后一个位置 `last[a[i ......
YACS 2023年8月月赛 甲组 T1 不定方程 题解
题目链接 背包 首先想到背包,$f_{i,j}$ 为前 $i$ 个数和为 $j$ 的方案数,但时间复杂度为 $O(n\cdot 20000000)$,会炸。 如果背包跑的时候只跑到当前的 $sum$,就能得到常数的优化,但仍然不足以通过。 插板法 先来考虑一个更简单的问题,每个 $a_i$ 只有下界 ......
P3847的题解
典型到不能再典型的区间 dp 了。 观察四种操作,考虑到加一个数和删一个数的情况相同,所以无非就是: 1. 删一个数。 2. 改一个数。 设 $dp[l][r]$ 为让区间 $l\sim r$ 对称(变成回文串)的最少次数。 可以很快地得出状态转移方程: 情况 $1$:如果 $a_l=a_r$,则 ......
CF1701B的题解
简单构造题。 很明显的,当 $d=2$ 的时候代价最大。 证明: $\because p_i\cdot d=p_{i+1}$ 当 $d$ 减小时,$p_i\cdot d$ 也在减小,$p_{i+1}$ 也在减小, 那么 $p_{i+1}$ 减小时,$p_{i+1}$ 可供选择的数就越多,代价也随即越 ......
CF1311F的题解
前置芝士:二维偏序。 二维偏序的板子题。 怎么看出是二维偏序的呢? 考虑点对 $(i,j)$,令 $x_iv_j$,则两点会越来越近,易知最短距离为 $0$,所以我们不需要考虑这种情况。 所以问题转化成:$x_i #include using namespace std; #define int l ......
CF605B的题解
算是对 [Leap_Frog大佬的补充吧qwq](https://www.luogu.com.cn/blog/daniu/solution-cf605b)。 %%% Leap_Frog. 我们来看一下大佬的这段话: 考虑倒着思考 Kruskal 算法。 按边权从小到大排序。 每次插入一条边。 如果是 ......
CF131D的题解
注意到 $n$ 实在是小到不行,我们可以直接采用比较暴力的做法。 ~~(嗯,可能算比较暴力吧~~ 很简单,找环,然后把环里的所有点全部压进 `dijkstra` 的优先队列就行了。 找环最坏 $n$ 遍跑满的 `dfs`,最短路是 $O(n\log n)$ 的,最坏时间复杂度为 $O(n^2)$,稳 ......
CF1712A的题解
挺简单的一道题。 要想使 $\sum\limits^k_{i=1}p_i$ 最小,很明显的,前 $k$ 个数必须为 $1\sim k$。设 $c_i$ 为 $i$ 在 $p$ 里出现的位置,则答案为 $\sum\limits^{k}_{i=1}[c_i>k]$。 ```cpp #include in ......
P2128的题解
可能是我第一篇被通过的题解 好一道图论水题!(虽然因为没有审题交了两遍才过 这题好长啊,一句话题意: `求无向图中的完全图的最大点权和` 那就很简单了 对读入的图存为两种形式:邻接矩阵和邻接表 邻接矩阵是为了更快的判断两点之间有没有边 邻接表是为了更快的枚举每一个点所连的每一条边(虽然没有这个必要, ......
P8254的题解
真没啥好说的,纯模拟 ```cpp #include int n,m; int q[2000][2000]; int a[2000]; int ans; int cnt; inline int read() { int x=0,f=1; char ch=getchar(); while(ch'9') ......
CF1673A的题解
~~好久没做CF的水题了~~ 由于每一个人都以最佳策略进行游戏且Alice先手。 设字符串长度为 $|s|$。 我们可以考虑: 1. $|s|$ 为偶数,此时Alice可以直接全部取走,不给Bob任何机会 ~~(人心险恶啊)~~。 1. $|s|$ 为奇数,此时Alice最多取 $|s|-1$ 个字 ......
CF1674A的题解
一道简单的题目 先考虑 `0 0 ` 的情况 很显然,有两种情况: 1. $y$ 不是 $x$ 的倍数 1. $\Large \frac{y}{x}$ 无法被分解成 $b$ 的乘方 如果不满足上述两种情况,我们只需要将 $b$ 从 $1$ 遍历到 $\Large \frac{y}{x}$ ,找到解输 ......
CF1674B的题解
很简单的题 可以先初始化一下,把所有单词放进一个 `map` 里,最后输入时用 `map` 映射即可。 一个坑点,注意每一个单词的两个字母不相同。 ```cpp #include #include #include #include using namespace std; map mp; void ......
CF1674C的题解
有意思的题目。 还是比较好想的。 先考虑 `-1` 的情况,可以想到,如果 $t$ 的长度不为 $1$,并且 $t$ 里面还有 `a` 的话,那么这个新的 `a` 又能被下一个 $t$ 替换,无限套娃。 剩下的,还是有两种情况: 1. 如果 $t$ 只有一个字符 `a` ,那么 $s$ 无论怎么被替 ......
P4956的题解
[原题传送门](https://www.luogu.com.cn/problem/P4956) 这道题我们想:$52$周所挣的钱都是一样的,我们可以先算出其中一周要多少钱。在**一周**中,Davor挣的钱数是: $$ \large \begin{aligned} money&=(x)+(x+k)+ ......
P1451的题解
当然,这道题**不**是我出的题目 ~~(滑稽保命~~ [原题传送门](https://www.luogu.com.cn/problem/P1451) # 一、审题 首先,我们看看,这道题是让我们求连在一起数字大于0的部分的数量 # 二、想思路 这道题是一道搜索题(废话),我喜欢用dfs的暴搜(真香 ......
P1087的题解
[原题传送门](https://www.luogu.com.cn/problem/P1087) 好久没写题解了QwQ 这道题我的代码感觉很像线段树(?) 我们先把这道题拆成两个部分:建树、遍历 # part.1 建树 我们可以每一次传入三个值:当前的结点和当前结点所对应的串的左右端点的下标 当然,我 ......
NOI 1.13-41的题解
第一次做站外题的题解/jd [题目传送门](http://noi.openjudge.cn/ch0113/41/) 为什么要写这一篇题解呢,是因为它卡了我很久,好不容易AC了(我太蒟,大佬勿喷) 我们开始吧! ## 一.审题 题目描述很清楚了,大家自己看吧 ## 二.代码&讲解 这里我会给大家上几个 ......
[AGC030D] Inversion Sum 题解
## 题意 给定一个长度为 $n$ 的排列 $a$ 和 $m$ 个形如 $\left(x,y\right)$ 的操作,每次操作可以选择是否交换 $a_x, a_y$,求最终所有形成的排列的逆序对总数。 ($1 \le n,m \le 3000$)。 ## 题解 考虑转化题意,考虑求出最终总的期望逆序 ......