随笔分类 -  题解

摘要:显然这个“11/22 Substring”是以那个“/”为中心对称的。鉴于一个这样的字符串只能有一个“/”,而题目又要求最长,所以确定了“/”就能确定一个满足要求的子串。 那思路就很简单了,只有两步: 找到所有的“/” 两边同时寻找相应的子串。 别的,除了判断一下越界之外,就不用管了。 ACCode 阅读全文
posted @ 2024-11-23 22:22 worker2011 阅读(14) 评论(0) 推荐(0) 编辑
摘要:笑点解析:这个人所在城市考试当天刮台风了,没考,免费送了一次 12 月的考试。 设计这么一个东西: dpi,j 表示到格子 (i,j) 的最大分数。 本来还好,但现在的问题是,如果这个格子是‘?’,我哪儿知道到底可不可以变啊?万一变得太多了,那,那不就废了!万一少了,那我分不 阅读全文
posted @ 2024-11-09 17:48 worker2011 阅读(14) 评论(0) 推荐(0) 编辑
摘要:很好的一道二分答案题。 听说 CSP 考前写 tj 可以让 rp += inf? 注:下文中 w 指物品重量序列,x 指箱子容量序列。 先问个问题:为什么我上来就敢肯定这是个二分答案题? 或者说,单调性在哪儿? 非常简单:如果一个盒子的容量越大,能装下的东西就更多(废话)。那么如果 阅读全文
posted @ 2024-10-20 18:07 worker2011 阅读(8) 评论(0) 推荐(0) 编辑
摘要:无耻的广告更好的阅读体验~ 最近在搞个人博客博客园的差点忘了更了。 已经沦落到在写这种水题题解了。 题目翻译 有 n 队人,每个队人数不同,把他们分成 2 组(同一队的不能拆开),使两组人数差距尽量小。 形式化题意:有 n 个数,把它们分成两组,使两组和的差尽量小。 说句闲话:感觉这 阅读全文
posted @ 2024-10-07 10:14 worker2011 阅读(40) 评论(0) 推荐(0) 编辑
摘要:说句闲话 并不会有更好的阅读体验。 这题是一个比较奇葩的贪心、构造。也可以认为是一个数据结构略有难度的练习题。 理论部分 ?> 注:使用 N 表示字符串长度。 一句段话题意:三个字符串 STX,其中 ST 仅包含小写字母且等长,X阅读全文
posted @ 2024-09-07 22:58 worker2011 阅读(27) 评论(0) 推荐(0) 编辑
摘要:注:为了方便,下文以 Sum 代表 i=1nAiN=2×105,考虑二分答案。 所以,答案有单调性吗?或者说,可以二分吗? 当然!如果 x=k 时可以满足条件,那么 x=k1 时显然只会更少(上 阅读全文
posted @ 2024-08-03 22:16 worker2011 阅读(68) 评论(0) 推荐(0) 编辑
摘要:闲着没事儿水篇 tj 题目大意 题目大意极其粗暴,记得 108×108=1016>2311 会爆 int,开 long long 就好。 于是这个题就变成了一个读入输出优化模板题。这不又回去了。 另外,输入输出常数优化也很常用,抢最优解和骗分时都可以用 阅读全文
posted @ 2024-07-30 08:54 worker2011 阅读(173) 评论(0) 推荐(0) 编辑
摘要:一句话题意:给定一个带点权的有权无向连通图,求点 1 到所有其它点的最短路径。 首先,只有 1 一个起点,所以是单源最短路,又因为最大是 2×105,所以是优先队列(堆)优化过后的 Dijkstra。 所以,我们只需要解决点权的问题就好了。一种显而易见的想法是把与这条边的边权 阅读全文
posted @ 2024-07-14 15:58 worker2011 阅读(107) 评论(0) 推荐(0) 编辑
摘要:很好写(15 min 解决)但不好讲(跟别人讲了 20 min)的写法 QwQ…… 首先,咱先算出原式的范围。最小值(暂且记为 k)的公式就是: k=i=1NLi就是每一个最小可能值的和。 同理,最大值(我记为 w)的公式就是: \[w= \ 阅读全文
posted @ 2024-07-13 22:40 worker2011 阅读(101) 评论(0) 推荐(2) 编辑
摘要:提供一种快速做法(31ms)~ 首先,枚举是必须的,但是可以快速枚举。 优化 1: 众所周知 gcd(a,b)×lcm(a,b)=a×b,所以我们只需要枚举 a 就好了。 优化 2:a 最大也只用到 \(\s 阅读全文
posted @ 2024-06-03 22:24 worker2011 阅读(68) 评论(0) 推荐(0) 编辑
摘要:看到大佬们基本都是直接输出 b c c 了事儿,一身反骨有其它构造方法的我表示不服,遂作此篇。 众所周知,两边之和大于第三边,所以,如果 b+c>d,那么 bcd 就是正确的。那如果不满足呢?在题目条件下 \(b + c > b + 阅读全文
posted @ 2024-05-13 20:38 worker2011 阅读(12) 评论(0) 推荐(0) 编辑
摘要:考场憋了很久,最后代码贼短…… 理想状态下,直接全排列解决问题。但是,1n2×105,明显 TLE,试都不用试的。 咋优化呢? 其实,前面的巨人只负责“打地基”,作为“塔尖儿”的巨人有且仅有 1 个。而前面地基随便排列,地基高度(他们的和)都不会变。所以, 阅读全文
posted @ 2024-05-05 11:00 worker2011 阅读(30) 评论(2) 推荐(0) 编辑
摘要:看标签知道要用 DP。 于是开始分析。 状态:dp(i,j,k)=i 轮中,第 i 轮出 j,一共换了 k 次牌的最大钱数。很好理解。 转移也不难,不就是不换和换两种吗! 所以,转移就是: \[dp(i, j, k) = \max \begin{ca 阅读全文
posted @ 2024-03-24 19:09 worker2011 阅读(69) 评论(0) 推荐(0) 编辑
摘要:明显是 DP。 然后就开始分析: 状态:dpij=i 个袋子且匹配 T 的前缀的长度为 j 时所需的最少钱数。 匹配 T 的前缀的长度为 j 就是前 j 个字符与 T 的前 j 个字符相同。 相对简单。 然后看转移 阅读全文
posted @ 2024-03-24 19:00 worker2011 阅读(10) 评论(0) 推荐(0) 编辑
摘要:因为一些众所周知的原因,不放代码。 分享一种考场思路: a107, 顺序查找肯定会废,所以可以用一种类似埃氏筛的方法将所有满足条件的数标记一下,并将其加入一个答案数组 a 当中。然后每次查询只需要用lower_bound函数二分查找一下,假如找到了第 i 个: \ 阅读全文
posted @ 2024-01-28 22:57 worker2011 阅读(457) 评论(0) 推荐(0) 编辑
摘要:“普及/提高-”这个难度很有意思。 说明这题可能需要用到提高组当中比较基础的内容。 它的名字叫做 map。 map<int, int> a; a[7] = 5; map<string, int> score; score["Leo2011"] = 400; map,其实相当于一个超大数组,但它真实的 阅读全文
posted @ 2024-01-18 22:01 worker2011 阅读(13) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示