摘要: 原题:合并回文子串 (nowcoder.com) 题意:输入两个字符串a和b,要求将其合并成字符串c,同时保持a和b中字符顺序不变,求能合成的最长回文子串长度。 分析:区间dp,具体看代码注解。 题解: #include <bits/stdc++.h> using namespace std; co 阅读全文
posted @ 2021-08-25 10:53 AtomsH 阅读(122) 评论(0) 推荐(0)
摘要: 原题:[P4047 JSOI2010]部落划分 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意:把n个地点划分成k个部分,给出每个点的坐标,要使每个部分之间的最短距离(两个部分中距离最近的两个地点的距离)尽量大。 分析:题意可以转化为,使一个部分间地点的距离尽量小,那么剩下的 阅读全文
posted @ 2021-08-15 22:59 AtomsH 阅读(57) 评论(0) 推荐(0)
摘要: 原题:Problem - 6983 (hdu.edu.cn) 题意:将一段1~n的区间二分成线段树,当区间的长度r-l+1<=k时,停止二分,统计线段树节点个数。 分析:对区间长度记忆化搜索 题解: #include <bits/stdc++.h> #define ll long long usin 阅读全文
posted @ 2021-08-06 15:46 AtomsH 阅读(74) 评论(0) 推荐(0)
摘要: 原题:291. 蒙德里安的梦想 - AcWing题库 题意:求把N×M的棋盘分割成若干个1×2的的长方形,有多少种方案。 分析:状压dp,具体看代码注解。 题解: //状压dp:棋盘式 //二进制记录状态 //结论:总方案数=只考虑横着放的方案数(考虑完横着放后,把竖的填进去就完事了) //根据上述 阅读全文
posted @ 2021-08-02 00:32 AtomsH 阅读(102) 评论(0) 推荐(0)
摘要: 原题: 180. 排书 - AcWing题库 题意: 给你n个数的任意排列,现在要你通过从中选出一段,然后插入某个位置的操作将这n个数按顺序依次排列,同时操作次数最少。 分析: 普通的dfs肯定会超时间复杂度,所以要用IDA*,也就是迭代加深+估价函数。 代码有三个函数,f()表示估价函数。因为一次 阅读全文
posted @ 2021-07-22 23:22 AtomsH 阅读(59) 评论(0) 推荐(0)
摘要: 原题: AcWing 170. 加成序列 - AcWing 题意:满足如下条件的序列 X(序列中元素被标号为 1、2、3…m)被称为“加成序列”: X[1]=1 X[m]=n X[1]<X[2]<…<X[m−1]<X[m] 对于每个 k(2≤k≤m)都存在两个整数 i 和 j (1≤i,j≤k−1. 阅读全文
posted @ 2021-07-18 18:48 AtomsH 阅读(64) 评论(0) 推荐(0)
摘要: 原题: AcWing 175. 电路维修 - AcWing 题意:给你一个图,由/和\构成,你可以旋转其中的一格,使其从一种状态变为另一种状态,问如何旋转最少的次数,使可以从左上角点沿着路径走到右下角点,输出该次数。 分析:双端队列 将题目转换成,一个地图,对于顺着原有路径的边,边权为0,对于垂直于 阅读全文
posted @ 2021-07-07 08:43 AtomsH 阅读(61) 评论(0) 推荐(0)
摘要: 原题: 1076. 迷宫问题 - AcWing题库 题意:给一个n*n的迷宫,1表示墙,0表示路,让你找出从左上角(0,0)点走到右下角(n-1,n-1)点的最短路径,并且输出这条最短路径上的每一个坐标。 分析: 很明显是bfs,但在想的时候因为对bfs理解不够清楚所以想简单了,本来以为只要输出bf 阅读全文
posted @ 2021-07-04 19:57 AtomsH 阅读(148) 评论(0) 推荐(0)
摘要: 原题: Problem - 510C - Codeforces 题意:给你n个字符串,这些字符串是按照某种字母规律排序的,判断是否存在这种规律,如果存在,要求找出字母排序的规律。 分析:拓扑排序,具体看代码注解。 题解: #include <bits/stdc++.h> using namespac 阅读全文
posted @ 2021-06-08 22:31 AtomsH 阅读(50) 评论(0) 推荐(0)
摘要: 原题: Problem - D - Codeforces 题意:给你一个数组,以及选择数组中数对应的花费。现要求从数组中选出部分数,使这些数的最大公约数为1,且花费最小,输出最终花费。 分析: dp[i]表示使目前最大公约数为i的最小花费,由于数字较大,需要用map存储。 题解: #include 阅读全文
posted @ 2021-06-05 15:16 AtomsH 阅读(54) 评论(0) 推荐(0)