2023CCPC广东省赛

2023广东省赛

Dashboard - The 2023 Guangdong Provincial Collegiate Programming Contest - Codeforces

A 枚举
C 循环
K ⭐⭐ 搜索
I ⭐⭐ 二分
D ⭐⭐ 贪心
M ⭐⭐ 几何
B ⭐⭐⭐ 单调队列优化DP
E ⭐⭐⭐ 字符串 思维
F<---- ⭐⭐⭐ 线段树 二分
J ⭐⭐⭐⭐ 数学
H ⭐⭐⭐⭐ 建图
G ⭐⭐⭐⭐ 思维
L ⭐⭐⭐⭐ 图论

A - Programming Contest(签到)

C - Trading(模拟)

K - Peg Solitaire(搜索)

思路:

直接dfs 遇到棋子判断能够向四个方向跳跃 保存最小的值作为答案
棋盘状态需要回溯

I - Path Planning(二分)

思路:

如果答案为x那么路径的序列一定存在0,1,2...x-1 具有二分性,考虑二分答案

因为路径中一定存在0,1,2,...x-1所以检查这些数的坐标 看能不能走到n,m

另一个思路:逐行逐列扫描 如果该数<x也就是说该位置必须走到 因为是按顺序扫描的且只能走右边和下边
所以后面要走的位置的列数一定大于等于当前最后一列 如果不行说明该路径不存在

D - New Houses(贪心)

思路:

最终一定有k个人有邻居 n-k个没有邻居

k的范围是[2,n]

也就是说挑k个ai并且n-k个bi
如果第i个人对答案的贡献是bi,而他挑ai使答案更优的情况一定使ai>bi
所以k个人如何挑选 ai-bi 从大到小排序 选前k个大的人
同时 k个人有邻居而n-k个没有邻居需要的房子数至少是k+2(n-k)=2n-k;

所以答案在k=2,3,...n中取最大值就可以

注意如果我们一开始求出所有bi的和然后每次取ai则可以O(1)求解出每次的答案

posted @   Danc1ng  阅读(26)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示