随笔分类 -  题解

摘要:[ABC017D] サプリメント 题解 阅读全文
posted @ 2023-12-02 19:59 codwarm 阅读(12) 评论(0) 推荐(0) 编辑
摘要:题目传送门~ 题目分析 首先得出两个串加在一起构成回文的要求:最多只有 1 个字母总共有奇数个。 想也很好想,同个字母两两对应,对应不了的那个放中间就行。 然后我们发现每个字符串只需要存储每个字母的数量的奇偶性 0,1 两个量,很容易想到用一个 26 位二进制来存字符串。 满足要求的对数 阅读全文
posted @ 2023-11-11 11:31 codwarm 阅读(9) 评论(0) 推荐(0) 编辑
摘要:原题链接 在反复拜读题解对于 DP 式子的解释后终于搞懂了,于是来交一发题解,总结一下心得。因此本篇题解主要针对 DP 式的解释。 题目分析 首先,很明显可以设出一个 dpn,k 的状态表示选择 n 个数和为 k。 状态转移如下: 若第 n 个数取 1,则有 $dp_{n, 阅读全文
posted @ 2023-10-28 17:29 codwarm 阅读(12) 评论(0) 推荐(0) 编辑
摘要:题目传送门~ 题目分析 主要思路:枚举每个 i,求出对应最佳情况的 jk,取最大值。 当 i,k 固定时,显然 EkEi 为定值。此时 EkEj 应取最大值,即 Ej 取最小值,j 应取最小值为 i+1。 当 i,j 固定时,$\f 阅读全文
posted @ 2023-10-27 10:59 codwarm 阅读(6) 评论(0) 推荐(0) 编辑
摘要:题目传送门~ 题目分析 题目要求出不小于 k 位的正整数 n 最小的等差数。 首先考虑 k 位等差数能否成功。枚举第一位和公差 k,从而求出每一位的数字,再判断这个数是否大于等于 n,因为是从小到大枚举第一位,所以最先得到的等差数一定是最小的,直接输出即可。 若找不到成功的 $k 阅读全文
posted @ 2023-10-14 15:46 codwarm 阅读(17) 评论(0) 推荐(0) 编辑
摘要:题目传送门~ 题目分析 阅读题面,发现题目要求我们求 l!,(l1)!,(l2)!(r1)!,r! 中模 k 意义下最大的数。 发现数据范围为 1l,r2×106,因此直接求得即可。 因为 $n! = 1 \times 2 \times 阅读全文
posted @ 2023-10-05 07:54 codwarm 阅读(13) 评论(0) 推荐(0) 编辑
摘要:题目传送门~ 题目分析 我们发现“从左到右颜色的编号是单调不下降的”,可以联想到经典 DP 问题:最长单调不下降子序列。因此这一题可以参考最长不降序列的写法。 注:本人思路并非最好,但个人认为较好理解。 设计状态转移方程:dpn,m 表示前 n 个选择 k 种颜色获得的最大价值。 阅读全文
posted @ 2023-10-02 21:56 codwarm 阅读(36) 评论(0) 推荐(0) 编辑
摘要:题目传送门~ 题目大意 求从 n 个数中取 k 个数做与运算的最大值。 题目分析 阅读题面,可以知道本题与二进制运算有关,又根据题意,需要求出 k 个数做与运算的最大值,可以想到贪心的思路:从大到小枚举二进制位,若有大于等于 k 个数在当前二进制位上为 1,则将当前二进制位对应的 阅读全文
posted @ 2023-09-13 00:49 codwarm 阅读(5) 评论(0) 推荐(0) 编辑
摘要:原题链接 题目分析 本题是一道比较简单的模拟题,根据题意直接模拟即可。 读入数据可以用桶存储牌的数量自动排序。 有几点需要注意一下: 判断“两个人都无法打出牌时”需要注意是连续两人无法打出牌。 在每次进行下一个回合前都需要注意初始化。 具体见代码。 #include<bits/stdc++.h> u 阅读全文
posted @ 2023-08-29 16:28 codwarm 阅读(54) 评论(0) 推荐(0) 编辑
摘要:原题链接 题目大意 给定三个字符串,求三个字符串的最长公共子序列。 题目分析 根据题目,我们发现,这是经典的动态规划题目最长公共子序列 LCS,只不过从二维升到了三维。若还不熟悉 LCS 的题目,可以看看这道题:LCS。 开始分析:首先,本题可以模仿二维最长公共子序列的状态,设计出一个三维的状态 $ 阅读全文
posted @ 2023-08-29 13:55 codwarm 阅读(10) 评论(0) 推荐(0) 编辑

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