
算法基础
文章平均质量分 53
Σ_aphasia
不要温和的走进那个良夜
展开
-
洛谷P1514-引水入城(dfs+贪心区间覆盖)
传送门首先通过佬的博客可以得到一个结论:当最后有解时,每个蓄水厂在最后一行能够覆盖到的区间一定是连续的,由此可以将其转化为区间覆盖问题进行贪心。考虑用 pairpairpair 存储对于第一行的第 iii 个点,其在最后一行能覆盖到的区间的左端点和右端点。由于最后需要贪心选择最小的区间以覆盖整个 [1,m][1,m][1,m] 范围,因此在每次的 dfsdfsdfs 之前都要把 visvisvis 数组进行清空,防止第 iii 点的左端点答案受第 i−1i-1i−1 点的右端点答案影响。而考虑到 vi原创 2022-03-30 21:29:55 · 418 阅读 · 0 评论 -
最大正方形(前缀和)
原题链接题目描述在一个 n * m 的只包含 0 和 1 的矩阵里找出一个不包含 0 的最大正方形,输出边长。输入描述输入文件第一行为两个整数 n , m( 1 <= n , m <= 100 ),接下来 n 行,每行 m 个数字,用空格隔开,0 或 1 .输出描述一个整数,最大正方形的边长。输入样例4 40 1 1 11 1 1 00 1 1 01 1 0 1输出样例2由于本题为 0、1 矩阵,因此可以考虑用前缀和的方法来做。若某区域内的数字之和恰好等于该区原创 2021-08-31 16:45:24 · 232 阅读 · 0 评论 -
NOIP2012 国王游戏(贪心)
原题链接题目描述输入描述输出描述输入样例3 1 1 2 3 7 4 4 6 输出样例2样例说明数据范围本题中不难发现,交换任意两个大臣时,只会影响他们各自的金币数,而不会影响他们之前和之后的大臣的金币数,因此可以考虑贪心对比两个大臣交换前后的金币。假设相邻的两个大臣中,其左右手分别为 a1,b1,a2,b2,之前所有人的左手乘积总和为 sum,可得交换前为 sum * a1 / b2,交换后为 sum * a2 / b1,若存在交换前 > 交换后,可推出原创 2021-08-12 20:47:47 · 707 阅读 · 0 评论