【2024 - 517集训四期】Day7 集训总结
比赛总结正常发挥 + 题目过水,AK虐全场。
由于题目过水,赛时题目总结略。
CSP-S 2022 SolutionT1 - 假期计划(Holiday)形式化题意给出一个有 $n$ 个节点的无向图。求从 $1$ 号点出发,在路上选择经过的四个不同的景点,最后回到 $1$ 号点后,选择的四个节点权值之和。选择的点之间距离最多的长度不可以超过 $k$ 。
思路直接 BFS 得到两个点是否可达,和距离前 3 的节点。最后合并答案即可。(这个蓝题评的名不副实,一下子就想出来了)
代码12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212 ...
【2024 - 517集训四期】Day6 集训总结
比赛总结发挥基本正常,T3 超级无敌尼玛比大失误
T1 总结赛时总结简单题,纯模拟即可
题目思路模拟
题目代码无
T2 总结赛时总结一眼题。小学生题目,贪心
题目思路贪心
题目代码无
T3 总结赛时总结赛时一眼顶针,结果某一行代码莫名奇妙不见了,导致 RE 还差了半天没查出来
400 -> 325 ,R1 -> R5
题目思路思路打开,模拟即可
题目代码无
T4 总结赛时总结一眼顶针二分,场切
题目思路二分,带点小学奥数(鸡兔同笼)。
题目代码无
CSP - S 2023 题解T4 种树按照前天的思路成功AC。附上这个首A的代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 ...
【2024 - 517集训四期】Day5 集训总结
比赛总结发挥基本正常,T3 小失误。
T1 总结赛时总结简单题,纯模拟即可
题目思路模拟
题目代码无
T2 总结赛时总结一眼题。线段树模板
题目思路线段树模板
题目代码无
T3 总结赛时总结找规律都不需要的找规律题。一眼就看出 1e18 内的数的数量特别少,打表 & 递归即可(517测评机吃了我的正解导致 T3 “未提交” 直接掉大分 )
题目思路打表 & 递归
题目代码无
T4 总结赛时总结无思路。骗分 15pts
题目思路由于题目保证有解,所以直接贪心匹配,贪心涂色。(赛时竟然没有人想到如此简单的题目)
题目代码无
【2024 - 517集训四期】Day4 集训总结
比赛总结发挥基本正常,T3 小失误。
T1 总结赛时总结简单题,基本上是模拟即可
题目思路数学,模拟,推公式
题目代码无
T2 总结赛时总结一眼题。典中典。
题目思路记录起始元素,用处理环的方式处理
题目代码无
T3 总结赛时总结一开始思路正确,因为旁边的 wangletao dalao 过了压力极大,发现写出来的代码样例没过直接删了打暴力,并且因为紧张过度理解错题意暴力也挂了
题目思路分类讨论。有意义的区间分为:$[1,l], [l, r], [r,n]$ 。
处理最小和最大值即可
题目代码无
T4 总结赛时总结极限乱贪AC
题目思路正贪一遍处理酒店 i 和市场 i 的最大值,在反贪一遍处理答案
题目代码无
2023 CSP - S 题解T1 密码锁场切没话说
T2 字符串思路不难发现,O(n ^ 2) 做法就是枚举起点 i 模拟,栈每空一次统计一次。由这个不难想到,记录每一个栈的状态,没重复一次记录,对于出现 $n$ 次的情况会有 $\cfrac{n(n-1)}{2}$ 的贡献。
代码无
T3 结构体思路纯模拟。没有任何技术含量
代码纪念一下最长的模拟代码
1237 行
T4 种 ...
【2024 - 517集训四期】Day2 集训总结
T1 总结赛时总结若至题。一眼顶针
题目思路数学,模拟,推公式
题目代码无
T2 总结赛时总结一眼题。典中典。
题目思路打表发现,第一项和第二项的系数是斐波那契数列。预处理出后计算即可
题目代码无
T3 总结赛时总结没有难度
题目思路贪,最小是优先未感染,最大是优先感染
题目代码无
T4 总结赛时总结思路正确,实现失误 :100 -> 55最后一刻,重新提交: 55 -> 5
R2 -> R5 nerd
题目思路把出生死亡和查询看作事件,按照时间排序。出生优先级大于查询大于死亡。余下模拟。
题目代码无
【2024 - 517集训四期】Day1 集训总结
T1 总结赛时总结若至题。一眼顶针
题目思路上数据结构 map
题目代码无
T2 总结赛时总结贪心策略错误,难度排序排成了满意度排序
题目思路贪,按照难度排序
题目代码1234567891011sort(con + 1, con + c + 1);sort(pro + 1, pro + p + 1);ll ans = 0;ll mx = 0, j = 0;for(int i = 1; i <= p; i++) { while(con[j + 1].first <= pro[i].first && j <= c) { mx = max(mx, con[++j].second); } ans += max(0LL, mx - pro[i].second);}printf("%lld", ans);
T3 总结赛时总结水题,典中典。
题目思路不难发现横竖无关,单独处理后合并答案
题目代码无
T4 总结赛时总结完全没有思路,部分分拿满
题目思路对于绝对值考虑分解,情况分 ...
CF1637D - Yet Another Minimization Problem
题面原题链接大秦 为你打开 题目传送门
题目翻译定义某数组 $x$ 的权值为
\sum\limits_{i=1}^n\sum\limits_{j=i+1}^n(x_i+x_j)^2现在,给定两个长度为 $n$ 的数组 $a,b$。你可以执行若干次操作,每次操作选择一个下标 $i$,并交换 $a_i,b_i$。求在进行操作之后两个数组的权值之和最小能够达到多少。
数据范围:
$t$ 组数据,$1\leqslant t\leqslant 40$。
$1\leqslant n,\sum n\leqslant 100$。
$1\leqslant a_i,b_i\leqslant 100$。
Translated by Eason_AC
输入格式Each test case consists of several test cases. The first line contains a single integer $ t $ ( $ 1 \leq t \leq 40 $ ) — the number of test cases. The following is a descriptio ...
【2024信友队 - 提高模考】Day 8 套题5 T1:怪物
题面题目描述 今有 $V$ 只怪物,第只怪物的生命值为 $a_i$。 你和另外一位玩家正在合力击杀这些怪物,你的攻击力为 $x$ ,对方的攻击力为 $y$。 你们需要轮流对活着的怪物进行攻击,第一个回合是你的回合。被攻击的怪物将会损失攻击它的玩家攻击力的生命值,若此后它的生命值非正,怪物将会死亡,击杀它的玩家得到1分。当不存在活着的怪物时,游戏结束。
在你的回合,你可以选择攻击任意一只怪物,也可以选择不进行攻击。 在对方的回合,对方会选择当前存活的,编号最小的怪物进行攻击。 你需要合理地安排你的策略,使得你的得分最大,并求出这个得分。
输入格式 输入的第一行包含三个整数 $N,x,y$ 。 接下来一行 $N$ 个整数,第个整数为 $a_i$。
输出格式 输出一行一个整数 $Ans$ ,表示你最大化的得分
思路
testForXYD
O(n) 做法首先我们一开始设置了 $\tt dp_{i,j}$ 表示考虑到 $\tt a$ 数组的第 $\tt i$ 个,$\tt b$ 数组的第 $\tt j$ 个的答案。
这个就分情况转移:
$a_i \lt b_j$ ,可以保留,转移方程:$\min\{dp[i-1][j], dp[i-1][j]+p[i]\}$
$a_i>b_j$ ,不可保留,转移方程:$dp[i-1][j]+p[i]$
$a_i = b_i$ ,可以保留,转移方程:$\min\{dp[i-1][j-1],dp[i-1][j],dp[i-1]+p[i]\}$
然后发现这个做法显而易见会爆掉,优化。
我们给 $\tt dp$ 数组压一维,变成 $\tt dp_i$ 表示考虑到 $\tt a$ 数组的第 $\tt i$ 个的代价。与原来变化不大。如果 $a_i$ 是 $b$ 数组里面的数字,我们需要转移;如果不是,就直接忽略。转移方程:
dp_i = \min\limits_{x=1}^{i-1}\left(dp_x+\sum\limits_{k=x+1}^{i-1}[a_k\gt b_{j-1} ...