
【暑假集训】
ACMerszl
一事精致,便能动人
展开
-
NYOJ1238 最小换乘
传送门:http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=1238比赛的时候题目都没有看,以为是校赛的那道题(一直没有处理),赛后看了原来不是那道题,这个应该是可以想出来的。思路:给出m条公交车线路,用字符串处理一下,存边。然后权值为1,d[n] - 1就是答案。不过字符串处理是有点坑的。。。(可能是多位数。。。)AC代码:...原创 2018-08-30 11:34:05 · 322 阅读 · 0 评论 -
kuangbin专题十二 HDU1260 Tickets
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1260题目大意:给出n个人,n个数表示每人单买的价格,n-1个数,表示相邻的两个人合买的价格。思路:画了画,感觉挺难的。然后深搜写了,感觉得记忆化,然后发现可以用dp[pos], 表示到达该点之前的所有和的最小值。(具体见注释)dp递推的状态方程没有写出来。dp[i] = minn(dp[i...原创 2018-08-11 10:44:38 · 135 阅读 · 0 评论 -
kuangbin专题十二 HDU1176 免费馅饼
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1176之前的dp专题有这道题,当时没有写出来,刚才第一次写了正推的代码。没有考虑到只能从5开始,WA。后来改了倒推。改了中间的小bug,过了。思路:在一个点,可以接到 左中右 三个位置的馅饼,为了避免边界处理,把可能下落的点0~10变为 1~11。 这样1的 左中右 就是 0 1 2了。比较方便...原创 2018-08-10 16:47:00 · 199 阅读 · 0 评论 -
HDU1425 A Chess Game
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1524思路:题目就是给你一个拓扑图,然后指定点的位置放棋子,然后两人轮流移动棋子(题目中的边的关系),直到一方不能移动。SG函数裸题,之前接触的两道一个是推的关系,一个是取石子的。这个比较明显的就是出度为0的点,sg值为0。然后深搜得到其他点的sg值,棋子的异或和为0 则P必败,否则N必胜由于递...原创 2018-08-01 19:08:17 · 118 阅读 · 0 评论 -
Educational Codeforces Round 48 (Rated for Div. 2) D 1016D Vasya And The Matrix
题目:codeforces.com/problemset/problem/1016/D题目大意:a[i] 表示第i行的异或和,b[j] 表示第j列的异或和,然后给出a[i] 和 b[j],存在这样的矩阵就构造出任意一个,不存在就NO对于我这种位运算知识为0的来说,再简单也不会。后来看了聚聚们说这道题很水,我看了看题解。首先存在条件:因为 a[i]是所有行的异或和 b[i]是所有列的异或和 ...原创 2018-08-06 10:53:43 · 175 阅读 · 0 评论 -
Educational Codeforces Round 48 (Rated for Div. 2) B 1016B Segment Occurrences
题目:http://codeforces.com/problemset/problem/1016/B题目大意:就是给两个字符串s t,然后q次查询,给出 [l, r], 问t出现的次数。刚开始做这道题感觉就是瞎写,没有好好思考,下面给出官方的思路:首先看一下单纯的做法。q次查询,每次从 i 属于 [l, r-m+1] 然后遍历,看是否和t一样。时间复杂度(q*m*n).注意到t只能从s...原创 2018-08-06 09:39:42 · 178 阅读 · 0 评论 -
kuangbin专题十二 HDU1114 Piggy-Bank
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1114题目大意:给出存钱罐的容量,和各种货币的价值的重量,然后求存钱罐里放满的最坏情况(里面钱最少)。思路:乍一看就是完全背包,但是用贪心一发WA,然后就学习了完全背包。注意一点,这里是求最小的价值。所以初始化条件要注意一下。AC代码:#include <iostream>...原创 2018-08-10 10:55:46 · 201 阅读 · 0 评论 -
HDU2044 一只小蜜蜂...
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2044递推:到1的方法数为1, 到2的方法数为1到3的方法数 = 1的方法数 + 2的方法数 (只能有1或2到达3)递推关系式:f[n] = f[n-1] + f[n-2];给出a, b 求a到达b的方法数可以转化为 以1为起点 例如:3到6 可以转化为 1到4。证明比较简单,因...原创 2018-07-28 10:50:14 · 112 阅读 · 0 评论 -
HDU2047 阿牛的EOF牛肉串
题目:https://blog.youkuaiyun.com/qq_40932661?t=1表面上看去似乎无从下手。但是可以从前面地推出后面的递推:假如涂第N个位置,有两种可能,①涂O ②不涂O。如果涂O的话,前面不能是O,只能是E或F两种, 即2*f(n-2)不涂O的话,N位置可以放E或F两种,即2*f(n-1)所以 f[n] = 2*(f[n-1] + f[n-2])!!!输入...原创 2018-07-28 10:30:55 · 166 阅读 · 0 评论 -
HDU1106 排序
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1106看到那道题以前没过,就拿出来搞一搞,结果疯狂WA,看了讨论区的所有测试数据,完美通过,还测试了要不要去重。最后发现一个说如果字符长度为1,直接输出。我就没在意(因为不可能)。然后无奈的试了一下,AC。这道题就是坑。AC代码:#include<iostream>#incl...原创 2018-07-28 09:31:15 · 251 阅读 · 0 评论 -
HDU2050 折线分割平面
题目:acm.hdu.edu.cn/showproblem.php?pid=2050递推:从直线入手,第n条直线,最多和平面上的直线有n-1个交点,多出(n-1)+1个部分序号 1 2 3 ... n 交点 0 1 2 ... n-1 多出部分 1 2 3 ... (n-1)+1 总部...原创 2018-07-27 20:50:55 · 128 阅读 · 0 评论 -
HDU1729 Stone Game
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1729思路:理解错题目了,以为SG模板直接套就行了。后来队友说了那个ci是不断变化的。那么每次可以放的石头数量也是不断变化的。但是按照自己的思路改了改模板,(TLE),最后看了题解理解了一下。看了网上好多题解,有一点想法了:题解都是找到一个q,使得q+q*q < si &&...原创 2018-07-31 20:23:39 · 203 阅读 · 0 评论 -
kuangbin专题十二 HDU1069 Monkey and Banana
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1069题目大意:给出n种长方体的x,y,z(任意个),然后堆起来(要求严格小于自己下面的长方体),求能达到的最大高度。经典的矩形嵌套:把每种长方体的6种方法都存储起来,然后排序,然后再像上升子序列dp一样。见注释AC代码:#include <iostream>#include...原创 2018-08-07 09:27:37 · 146 阅读 · 0 评论 -
Codeforces Round #503 (by SIS, Div. 2)B 1020B Badge
题目大意:每个同学可以指定一个人,然后构成一个有向图。1-n次查询,从某个人开始并放入一个东西,然后循环,直到碰到一个人已经放过了,就输出。思路:直接模拟就可以了,O(n^2) 但是O(n)也可以实现, 不是太懂大神的思路。初始化ans[i] = i, 一个点能被输出的话就是 ans[i] = i (可以模拟一下),这个ans是如何算的呢。大神用了topo排序。 记录入度数,然后把入读...原创 2018-08-14 20:12:25 · 123 阅读 · 0 评论 -
POJ2456 Aggressive cows
题目:http://poj.org/problem?id=2456思路:二分经典题目,二分答案,判断间隔mid是否能容纳所有的奶牛。不过二分坑点比较多例如查找值的时候,while里面写<=, 否则{1,3,5}查找不到5,返回值也是很迷的。这道题返回mid是错误的。可以从结束条件分析,结束条件:l > r, 前一个状态下的 l+1 了,所以最后返回 l-1(纯属个人理解)...原创 2018-08-03 09:29:55 · 310 阅读 · 0 评论 -
POJ1664 放苹果 (母函数)
传送门:http://poj.org/problem?id=1664思路:多校见过类似的题目,简单母函数题目,不过比赛的时候,直接给出了解题分析:用的递归写的,感觉不是太理解。递归:(见注释)#include <iostream>#include <stdio.h>#include <math.h>#include <string.h&...原创 2018-08-25 14:26:20 · 529 阅读 · 5 评论 -
袜子
传送门:http://47.94.248.118/index.php?1690962575一眼看去并查集,但是没有处理好,思路不对,只是简单的加减了,没有仔细考虑。题目也有点迷惑人,不过可以看出来输入的是下标思路:可以把下标并起来。然后把每一个下标的颜色放入祖先节点的容器里,跑每一个容器里出现次数最多的颜色,然后 ans += 总颜色 - 最多次数,就是这个容器的修改数。AC代码:...原创 2018-08-28 18:59:20 · 274 阅读 · 0 评论 -
HDU1253 胜利大逃亡
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1253思路:bfs三维模板题。存图之后,bfs(0,0,0), 然后就走能到达的点,标记,步数+1,然后判断即可。比赛的时候怎么也写不出来,貌似边界弄错了(一直以为是存图的原因),后来写的时候还是不对!! check函数里面if有分号。。。。通过题目发现了短板,结构体构造函数也忘了。。AC...原创 2018-08-28 17:23:39 · 153 阅读 · 0 评论 -
kuangbin专题十二 POJ3186 Treats for the Cows
传送门:http://poj.org/problem?id=3186题目大意:给一个长度为n的序列,每次只能从队首或队尾取一个数,第几次取 * f[i] 就是利润,求最大利润。看到题目果断贪心,只能局部最优,因为是dp专题,但是丝毫不会dp,看了题解发现是区间dp,然后看着理解了一下,dp[i][j] 表示 从第i个数到第j个数的最大利润,由于只能从dp[i+1][j] 和 dp[i]...原创 2018-08-17 10:48:38 · 150 阅读 · 0 评论 -
kuangbin专题十二 HDU1078 FatMouse and Cheese
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1078题目大意:和滑雪比较类似,只是多了一个最多k步的限制。dp + dfs即可记忆化搜索。dfs一个点,求k步之内的最大值。 还是对搜索发怵!!!!AC代码:(见注释)#include <iostream>#include <stdio.h>#include...原创 2018-08-18 16:11:22 · 172 阅读 · 0 评论 -
kuangbin专题十二 POJ1661 Help Jimmy
传送门:http://poj.org/problem?id=1661思路:本来以为是dp二维x, y, 但是不可能开那么大,状态也不好规划。无奈之下看了题解。dp[i][0]表示从左边到达i的最小花费dp[i][1]表示从右边到达i的最小花费然后考虑怎么转移。例: ----------------------------------- ...原创 2018-08-15 19:09:11 · 267 阅读 · 0 评论 -
kuangbin专题十二 HDU1087 Super Jumping! Jumping! Jumping!
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1087题目大意:给出一个序列,求严格上升子序列的最大和。看到题目,发现是之前做过的题目,但是读了题之后,发现不是普通的,(可能是状态不好,就不想做了)。dp[i] 表示 以 i 结尾的最大和。状态转移方程:dp[i] = max(a[i], max{dp[j] | 0 <= j <...原创 2018-08-08 09:14:00 · 132 阅读 · 0 评论 -
POJ2503 Babelfish
题目:http://poj.org/problem?id=2503题目大意:就是后面字符串映射前面字符串,然后查询输出。直接map,不过也可以考虑字典树解决;AC代码:#include<iostream>#include<map>#include<cstdio>#include<string>using namespace st...原创 2018-08-03 10:41:57 · 151 阅读 · 0 评论 -
POJ2531 Network Saboteur
题目:http://poj.org/problem?id=2531题目大意:给你N个点,然后以矩阵形式给你了 Cij 的权值, 然后让你把这N个点,分成两部分,使 值最大。思路:显然对于深搜极差的我体验感极差,首先分为 0,1 集合,在1里面就减,在0里面就加,结合代码理解一下dfs(1,0),然后在for里面搜索情况,可以自己模拟一下样例就很清楚了。如果把一个数放入1中,权值变小...原创 2018-08-03 10:35:43 · 141 阅读 · 0 评论 -
POJ3278 Catch That Cow
题目:http://poj.org/problem?id=3278 思路:从n到k,每步有3种走法,根本没有发现用bfs可以完美解决问题。方法非常巧。其实也是正常解法,平时做的bfs都是6或8个方向并且是2维的,但是换做3种走法还是一维的就感觉很神奇,说明没有真正理解bfs。这样一说,就更简单了。 AC代码:#include<iostream>#include&...原创 2018-08-03 10:01:45 · 130 阅读 · 0 评论 -
POJ2488 A Knight's Journey
题目:http://poj.org/problem?id=2488题目大意:可以从任意点开始,只要能走完棋盘所有点,并要求字典序最小,不可能的话就impossible;思路:dfs+回溯,因为字典序最小,如果可以的话,肯定是从(1,1)开始的。然后递归搜索该点的所有方向,不能满足就回溯,直到找到能满足的,或者一直找不到。代码+注释:#include<iostream>...原创 2018-08-03 09:48:46 · 339 阅读 · 1 评论 -
HDU2048 神、上帝以及老天爷
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2048看书发现了这道题,刚开始没理解题意,以为是中奖的概率,---> 1/n后来知道了是典型的错排问题。(后来发现是真的裸)递推:Di 为 i个人 的错排数 D1 = 0, D2 = 1;第N个人拿了自己的名字,假如前面的N-1个人是错排的,那么第N个人随便找一个人...原创 2018-07-27 17:44:07 · 152 阅读 · 0 评论 -
HDU1536 S-Nim
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1536题目大意:给出k个可取数的集合,m个查询。查询每次是否是先后获胜。定义一些名词后继:如果当前状态为x,采取一个合法的操作后,状态变为y,那么y是x的后继(2是5的后继,<取3个>)mex:最小不在集合中的整数SG(x) = mex{ SG(y) | y是x的后继}...原创 2018-07-31 16:27:51 · 243 阅读 · 0 评论 -
POJ1936-All in All
题目链接:点击打开链接 All in AllTime Limit: 1000MS Memory Limit: 30000K Total Submissions: 35348 Accepted: 14736 DescriptionYou have devised a new encryption technique which encodes ...原创 2018-07-13 21:10:10 · 100 阅读 · 0 评论 -
POJ3080-Blue Jeans
题目链接:点击打开链接 Blue JeansTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 20430 Accepted: 9053 DescriptionThe Genographic Project is a research partnership bet...原创 2018-07-13 21:07:52 · 132 阅读 · 0 评论 -
POJ1836 Alignment
题目链接AlignmentTime Limit: 1000MS Memory Limit: 30000K Total Submissions: 18497 Accepted: 6060 DescriptionIn the army, a platoon is composed by n soldiers. During the morning i...原创 2018-07-25 09:18:43 · 150 阅读 · 0 评论 -
POJ1182 食物链
题目链接:点击打开链接 思路:参考资料后,两种方法:①就是开3倍空间,然后和普通并查集一样,但是关系不太好理解。②向量偏移方法一:有好几种理解方式,还是书上的好理解:x-A x-B x-C y-A y-B y-C AC代码:代码断点1处的 是判断是否b和c不是同类。那么不是同类怎么表示:判断x-A 和 y-B 是不是一组,x-...原创 2018-07-19 08:46:47 · 168 阅读 · 0 评论 -
HDU2067 小兔的棋盘
题目链接思路: ①dp ②卡特兰数①:画图,取右下三角形分析,每次都只能向右或向上走。如图所示:说明:蓝色是初始化, 黑色是行列号,紫色是 该点=左点+下点所以状态转移方程为 dp[i][j] = dp[i][j-1] + dp[i+1][j];AC代码:#include<iostream>#include<cstdio>#incl...原创 2018-07-18 17:41:27 · 154 阅读 · 0 评论 -
HDU1395 2^x mod n = 1
题目链接思路:本来以为如果是偶数就? 奇数就 5 = 2*2 + 1 所以就是 2的4次方 。WA! 例如, 2^x mod 7 = 1. 这样的答案是 7 = 2 * 3 + 1 是6吗? 6的确对,但是要保证最小。所以思路错误。看了题解。了解到费马小定理,还是欧拉定理能够得到奇数必有解。AC代码:(暴力求解)#include<iostream>#inclu...原创 2018-07-18 17:10:33 · 181 阅读 · 0 评论 -
HDU1286 找新朋友
题目链接:点击打开题目找新朋友Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14912 Accepted Submission(s): 7939 Problem Description新年快到了,“猪头帮协会”准...原创 2018-07-18 16:12:45 · 176 阅读 · 0 评论 -
HDU1247-Hat’s Words
题目链接Hat’s WordsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 18278 Accepted Submission(s): 6491 Problem DescriptionA hat’s word i...原创 2018-07-18 11:21:58 · 138 阅读 · 2 评论 -
POJ3630-Phone List
题目链接:点击打开链接Phone ListTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 33437 Accepted: 9660 DescriptionGiven a list of phone numbers, determine if it is consistent i...原创 2018-07-18 11:10:20 · 100 阅读 · 0 评论 -
POJ2513-Colored Sticks
题目链接:点击打开链接Colored SticksTime Limit: 5000MS Memory Limit: 128000K Total Submissions: 39392 Accepted: 10271 DescriptionYou are given a bunch of wooden sticks. Each endpoint of...原创 2018-07-18 10:40:55 · 197 阅读 · 0 评论 -
POJ3253-Fence Repair
题目链接:点击打开链接Fence RepairTime Limit: 2000MS Memory Limit: 65536K Total Submissions: 59979 Accepted: 19802 DescriptionFarmer John wants to repair a small length of the fence aro...原创 2018-07-18 10:24:38 · 92 阅读 · 0 评论 -
NYOJ542-试制品
题目链接:点击打开链接 试 制 品时间限制:1000 ms | 内存限制:65535 KB难度:4描述ZZ大学的Dr.Kong最近发现实验室的很多试制品都已经用完。由于项目经费有限,为了节省,Dr.Kong决定利用实验室现有的试制品来生成所缺的试制品。为此,Dr.Kong连续几天通宵达旦整理出一份研究资料并让研究生Bill去实验并统计能产生多少种所缺的试制品。Bil...原创 2018-07-13 21:12:56 · 155 阅读 · 0 评论