算法竞赛进阶指南
Haruomi
这个作者很懒,什么都没留下…
展开
-
271. 杨老师的照相排列 (线性DP)
271. 杨老师的照相排列杨老师希望给他的班级拍一张合照。学生们将站成左端对齐的多排,靠后的排站的人数不能少于靠前的排。例如,12名学生(从后向前)可以排列成每排5,3,3,1人,如下所示:X X X X XX X XX X XX同时,杨老师希望同行学生身高从左到右依次降低,同列学生身高从后向前依次降低。还以12名学生为例,给学生们编号(号码越小代表身高越高)后,按照此规则可进行...原创 2019-09-04 21:43:39 · 332 阅读 · 0 评论 -
AcWing 273. 分级 (线性DP)
AcWing 273. 分级 给定长度为N的序列A,构造一个长度为N的序列B,满足:1、B非严格单调,即B1≤B2≤…≤BN或B1≥B2≥…≥BN。2、最小化 S=∑Ni=1|Ai−Bi|。只需要求出这个最小值S。输入格式第一行包含一个整数N。接下来N行,每行包含一个整数Ai。输出格式输出一个整数,表示最小S值。数据范围1≤N≤2000,1≤|Ai|≤109输入样例:7...原创 2019-09-08 16:38:17 · 309 阅读 · 0 评论 -
简单位运算 + DFS练习
92. 递归实现指数型枚举(位运算 + DFS)从 1~n 这 n 个整数中随机选取任意多个,输出所有可能的选择方案。输入格式输入一个整数n。输出格式每行输出一种方案。同一行内的数必须升序排列,相邻两个数用恰好1个空格隔开。对于没有选任何数的方案,输出空行。本题有自定义校验器(SPJ),各行(不同方案)之间的顺序任意。数据范围1≤n≤15输入样例:3输出样例:322...原创 2019-09-20 21:14:45 · 208 阅读 · 1 评论 -
POJ--1742 Coins(DP,多重背包)
POJ–1742 Coins给定N种硬币,其中第 i 种硬币的面值为Ai,共有Ci个。从中选出若干个硬币,把面值相加,若结果为S,则称“面值S能被拼成”。求1~M之间能被拼成的面值有多少个。输入格式输入包含多组测试用例。每组测试用例第一行包含两个整数N和M。第二行包含2N个整数,分别表示A1,A2,…,AN和C1,C2,…,CN。当输入用例N=0,M=0时,表示输入终止,且该用例无...原创 2019-09-22 20:25:37 · 209 阅读 · 0 评论 -
AcWing-95. 费解的开关(基础算法,简单递推)
95. 费解的开关你玩过“拉灯”游戏吗?25盏灯排成一个5x5的方形。每一个灯都有一个开关,游戏者可以改变它的状态。每一步,游戏者可以改变某一个灯的状态。游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态。我们用数字“1”表示一盏开着的灯,用数字“0”表示关着的灯。下面这种状态1011101101101111000011011在改变了最左上角的灯的状...原创 2019-10-09 20:38:00 · 387 阅读 · 0 评论