
HDU
wchhlbt
这个作者很懒,什么都没留下…
展开
-
hdu 1533 Going Home (最小费用流)
解题思路:可以很明显的看出来最小费用流的模型,还可以使用KM算法做。AC代码:/** @Author: wchhlbt* @Last Modified time: 2017-11-20*///#include #include #include #include #include #include #include #include #include #incl原创 2017-11-20 22:10:46 · 325 阅读 · 1 评论 -
hdu 5651 xiaoxin juju needs help (组合数学+逆元)
题目大意:http://acm.hdu.edu.cn/showproblem.php?pid=5651 xiaoxin巨从小就喜欢字符串,六年级的时候他就知道了什么是回文串。这时,xiaoxin巨说到:如果一个字符串 SSS 是回文串,那么该字符串从前往后看和从后往前看是一样一样的。六年级的暑假,xiaoxin很快就做完了暑假作业,然后到腾讯做起了实习生。这日,leader给了xiaoxin一个原创 2017-03-18 11:00:38 · 375 阅读 · 0 评论 -
hdu 2546 饭卡(0-1背包问题)
饭卡Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 19943 Accepted Submission(s): 6939Problem Description电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之原创 2016-04-16 11:13:31 · 450 阅读 · 0 评论 -
hdu 4417 Super Mario (二分法 + 划分树求区间第K大)
题目大意:n个数,给定一段区间【l, r】,问在这段区间上小于等于 h 的数字有多少个。解题思路:采用划分树可以在O(log(n))求出区间第K大的值,再采用二分法选择出最大的K即为答案。划分树的讲解会在以后补充。AC代码:#include#includeusing namespace std;#define M 100005int tree[20][M],sorted[M];原创 2016-11-26 18:21:50 · 396 阅读 · 0 评论 -
hdu 1754 I Hate It (线段树)
解题思路:标准的线段树单点修改入门题~AC代码:#include #include using namespace std;#define maxn 200005//int score[maxn];char ch;struct NODE{ int l,r,val;} node[4*maxn];int build(int root, int l, int r)原创 2016-10-04 20:53:56 · 253 阅读 · 0 评论 -
hdu 5898 odd-even number (数位dp)
odd-even numberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 661 Accepted Submission(s): 362Problem DescriptionFor a number原创 2016-09-24 16:27:17 · 407 阅读 · 0 评论 -
hdu 1431 素数回文 (模拟)
链接 : http://acm.hdu.edu.cn/showproblem.php?pid=1431解题思路:采用构造的思路来构造回文数字,怎么构造呢?首先将回文数分为两类,奇数长度的回文数字和偶数长度的回文数字。1)对于偶数长度的回文数字,可以由1-n每一个数字将其对称翻转构造2)对于奇数长度的回文数字,可以在跳过最后数字一位的情况下翻转构造还有一个事实就是由同一个数字构造原创 2016-10-03 17:26:27 · 591 阅读 · 0 评论 -
hdu 2531 Catch him (块状BFS) + 常见BFS的错因
Catch himTime Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 963 Accepted Submission(s): 438Problem Description在美式足球中,四分卫负责指挥整只球队的进原创 2016-08-10 20:57:16 · 600 阅读 · 0 评论 -
hdu 1978 How many ways (记忆化搜索)
解题思路:记忆化搜索+DFS每次搜索所有可以走的格子,再对这些格子向下继续搜索,同时记录下这些格子到终点的路径数,避免重复搜索#include #include #include using namespace std;#define M 10000int dp [105][105];int map [105][105];int dx[2] = {0,1};int dy[2原创 2016-03-28 16:15:38 · 467 阅读 · 0 评论 -
hdu 1548 A strange lift (BFS)
解题思路:BFS注意点:每次查询结束后,要清空队列#include #include #include #include #define inf 0x3f3f3f3fusing namespace std;int k[205];int step[205];int n,a,b;void bfs(int a,int b)//a->start b->finish{原创 2016-03-24 13:21:31 · 318 阅读 · 0 评论 -
hdu 1133 Buy the Ticket(卡特兰数+大整数)
题目原文:http://acm.hdu.edu.cn/showproblem.php?pid=1133The "Harry Potter and the Goblet of Fire" will be on show in the next few days. As a crazy fan of Harry Potter, you will go to the cinema and have原创 2017-02-26 15:43:40 · 414 阅读 · 0 评论 -
hdu 3038 How Many Answers Are Wrong (种类并查集)
解题思路:这是并查集里面很特殊的一类题目,不仅仅需要考虑点与点之间的集合关系,点与点之间还有一定的关系,姑且把他称之为边权,解决这个问题就是要用到这种思想,针对每一条线段,我们把两个端点提取出来,把他们的和作为边权,然后建立并查集,如果一个线段的两个端点已经在同一个根节点下,那么根据定义是可以得到这条线段的值的,如果不在一个根节点,可以将两个集合合并,然后维护两个根节点形成的新的线段。AC代码原创 2017-04-28 14:45:34 · 266 阅读 · 0 评论 -
hdu 6060 RXD and dividing (树 + 贪心)
解题思路:考虑每一条边权在最大花费中的贡献,因为最多有k个点集,所以一条边最多被统计k次,每条边被统计的次数跟这条边下端节点这棵子树的大小有关,因为这棵子树上的每个点都可以分到不同的k个集合,能分出去多少点就会被统计几次。AC代码:/* @Author: wchhlbt @Date: 2017/8/2*/#include #define Fori(x) for(原创 2017-08-02 21:23:33 · 378 阅读 · 0 评论 -
hdu 5114 Collision (扩展欧几里得)
CollisionProblem DescriptionMatt is playing a naive computer game with his deeply loved pure girl.The playground is a rectangle with walls around. Two balls are put in different positions原创 2017-11-03 14:41:44 · 322 阅读 · 0 评论 -
2017 CCPC 哈尔滨 A (hdu 6230) Palindrome (Manacher + BIT)
解题思路: 题目中要求的回文串大致为 ______ i ____ j ______ 分别以 i j 为中心的两个回文串我们可以使用Manacher算法先处理出以每个字符为中心的回文串的长度,注意这里求出来的回文串长度一定都是奇数然后我们令 p[i] 为以第 i 个字符为中心的回文半径然后一个字符串想要满足题意需要满足下面三个条件j > ij-i j-i 我们原创 2017-11-12 17:51:36 · 1441 阅读 · 0 评论 -
2017 CCPC 哈尔滨 M ( hdu 6242) Geometry Problem (随机化 + 三角形外心)
解题思路:看到1/2这个概率可以很容易想到随机化的算法,每次随机一个三元组,表示从n个点中随机选取三个点,然后判断这三个点的外接圆是不是满足题意的点。可以证明的是选取三个点不能构成这么一个圆的概率是(1-1/8) = 7/8 . 那么选取100次还没找到这个圆的概率已经是1e-6,近似为0.所以算法的复杂度得到证明。Tips: 比赛的时候一直以为是精度问题导致Wrong Answer,原创 2017-11-12 10:50:09 · 1262 阅读 · 0 评论 -
hdu 5120 Intersection (圆面积交)
解题思路:画一个图可以很明显的看出答案对应的公式,就是一道圆面积交模板题。AC代码:/** @Author: wchhlbt* @Last Modified time: 2017-11-01*///#include #include #include #include #include #include #include #include #include #in原创 2017-11-01 19:45:46 · 267 阅读 · 0 评论 -
hdu 5972 Regular Number (bitset优化匹配) 2016大连现场赛
解题思路:暴力匹配过程太慢,我们考虑怎么优化这个过程,画图分析的话,最显然的是我们对文本串第 i 个字符进行了多次重复匹配 ,而我们又不能列出所有的模式串,所以无法使用KMP算法。所以考虑建立10个长度为1000的bitset,分别记录数字0-9会出现在模式串的第几位。再建立一个长度为1000的bitset a, a[i] 表示从以当前文本串位置 j 为结尾的长度为 i 的子串能否和模式原创 2017-10-01 22:06:09 · 311 阅读 · 0 评论 -
hdu 4183 Pahom on Water (最大流)
Pahom on WaterProblem DescriptionPahom on Water is an interactive computer game inspired by a short story of Leo Tolstoy about a poor man who, in his lust for land, forfeits everything. The ga原创 2017-10-18 15:33:24 · 278 阅读 · 0 评论 -
hdu 3605 Escape (最大流+状态压缩)
EscapeProblem Description2012 If this is the end of the world how to do? I do not know how. But now scientists have found that some stars, who can live, but some people do not fit to live so原创 2017-09-30 22:37:04 · 327 阅读 · 0 评论 -
hdu 2883 kebab (最大流 + 建图)
kebabProblem DescriptionAlmost everyone likes kebabs nowadays (Here a kebab means pieces of meat grilled on a long thin stick). Have you, however, considered about the hardship of a kebab roas原创 2017-10-17 16:50:51 · 238 阅读 · 0 评论 -
2017百度之星复赛 hdu 6148 Valley Numer (数位dp)
题目原文:Valley NumerTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 343 Accepted Submission(s): 180Problem Description众所周知原创 2017-08-18 22:41:13 · 613 阅读 · 0 评论 -
hdu 1253 胜利大逃亡 (BFS)
#include #include #include #include using namespace std;#define inf 0x3f3f3f3fint k,a,b,c,t;int map[60][60][60];int time[60][60][60];struct point{ int x,y,z;};queueP;int dx[6] = {0,原创 2016-03-20 21:29:30 · 371 阅读 · 0 评论 -
hdu 2553 N皇后问题 (DFS)
N皇后问题Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 18233 Accepted Submission(s): 8234Problem Description在N*N的方格棋盘放置了N个皇后,使得它们原创 2016-07-27 21:11:03 · 289 阅读 · 0 评论 -
hdu 2544 最短路 (Floyd-Warshall)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2544解题思路:本题采用Floyd-Warshall算法(动态规划思想)求最短路,需要注意本题为无向图。AC代码:#include #include #include #define inf 0x3f3f3f3f //定义一个极其大的数using namespac原创 2016-04-30 16:06:31 · 494 阅读 · 0 评论 -
hdu 1114 Piggy-Bank(完全背包问题)
解题思路:完全背包问题#include #include #include using namespace std;#define inf 0x3f3f3f3fint val[505];int weight[505];int dp[10005];int main(){ //freopen("test.txt","r",stdin); int t,i,j;原创 2016-04-28 21:15:19 · 595 阅读 · 0 评论 -
hdu 1171 Big Event in HDU(0-1背包问题)
Big Event in HDUTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 33389 Accepted Submission(s): 11622Problem DescriptionNowadays,原创 2016-04-16 11:04:50 · 332 阅读 · 0 评论 -
hdu 1013 digital roots(数字根)
Digital RootsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 1445 Accepted Submission(s): 580 Problem D原创 2016-03-12 00:14:06 · 603 阅读 · 0 评论 -
hdu 1443 Joseph
JosephTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2547 Accepted Submission(s): 1456 Problem Descrip原创 2016-03-14 00:14:31 · 390 阅读 · 0 评论 -
hdu 2674 N!Again
N!AgainTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1128 Accepted Submission(s): 631 Problem Descrip原创 2016-03-12 00:09:48 · 283 阅读 · 0 评论 -
hdu 2136 Largest prime factor
Largest prime factorTime Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5812 Accepted Submission(s): 1768 Problem Des原创 2016-02-26 22:24:23 · 303 阅读 · 0 评论 -
hdu 1215 七夕节(求因子之和)
//解题方法:类似筛法求素数的算法,令每一个数的倍数都加入这个数本身的值,将结果打表。#include #include using namespace std;const int Max=500005;int a[Max];int main(){ int i,n,j,t,num; memset(a,0,sizeof(a)); for(i=2;i<=Max原创 2016-02-26 22:39:20 · 443 阅读 · 0 评论 -
hdu1071 The area
The areaProblem DescriptionIgnatius bought a land last week, but he didn't know the area of the land because the land is enclosed by a parabola and a straight line. The picture below原创 2016-02-25 23:04:56 · 386 阅读 · 0 评论 -
hdu 2066 一个人的旅行(最短路)
解题思路:应该是最短路问题Dijkstra算法,虽然想到了超时,还是写了一个Floyd-Warshall版本,不过果断TLE了。。。先放一个TLE代码:#include #include #include #define inf 0x3f3f3f3fusing namespace std;int dp[1005][1005];int S[1005],D[1005];i原创 2016-04-30 17:26:43 · 457 阅读 · 0 评论 -
hdu 5666 Segment(大整数乘法)
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5666SegmentTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1381 Accepted Submission(s): 5原创 2016-06-07 19:09:46 · 418 阅读 · 0 评论 -
hdu 1969 Pie (二分法+贪心)
PieTime Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 8697 Accepted Submission(s): 3182Problem DescriptionMy birthday is coming up a原创 2016-05-22 20:30:37 · 670 阅读 · 0 评论 -
hdu 1029 Ignatius and the Princess IV(主元素问题):
Ignatius and the Princess IVTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32767 K (Java/Others)Total Submission(s): 26993 Accepted Submission(s): 11454Problem Descriptio原创 2016-08-05 16:17:36 · 326 阅读 · 0 评论 -
hdu 2089 不要62(数位DP/暴力)
不要62Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 34126 Accepted Submission(s): 12309Problem Description杭州人称那些傻乎乎粘嗒嗒的人为62(音:l原创 2016-08-04 19:16:45 · 390 阅读 · 0 评论 -
hdu 3555 Bomb (数位dp)
题目大意:给定一个数n,问你从1--n之中有多少个数含有49这个子串,1-50中就只有49符合条件。解题思路:因为是初学数位dp,这是自己根据模板写的第一道题,我设计的dp[i][j]表示的含义是i位数字,并且他的前一位是数字j,从1-这个数字中不包含49字串的个数。具体可以参考代码。 这里简单介绍一下我所了解的数位dp,所谓数位dp,无非就是根据每一位数字的情况来进行判原创 2016-08-04 17:14:11 · 559 阅读 · 1 评论 -
hdu 5410 CRB and His Birthday(0-1背包+完全背包)
CRB and His BirthdayTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1605 Accepted Submission(s): 755Problem DescriptionToday is原创 2016-08-04 18:45:18 · 373 阅读 · 0 评论