算法与数据结构
文章平均质量分 86
程序员基础必修课,刷题心得,总结
坤坤爱技术~
时光飞逝,我们想做的太多~
慢慢来,一步一个脚印
学习永无止境~
解决恐惧最好的办法,就是面对
展开
-
kk_想要学习的知识
2018/4/27计算几何一.简介计算几何属于ACM算法中比较冷门的分类,在省赛中只在前几年考察过,这两年还没有考过,而且和高精度计算一样,遇到题目主要靠套模板,因此对题意的理解至关重要,而且往往题目描述还常为英文,所以还是需要一定的题量支撑,来判断具体考察的是什么。 二.题型分类下列仅为一部分,可与《算法与实现》第三章计算几何互相补充。1.点判断点是否在多边形中★★平面最近点对/最远点对★曼哈顿...原创 2018-04-12 17:13:13 · 339 阅读 · 0 评论 -
Java-大数
模板题 hdu 1753 大明A+B模板:public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); BigDecimal a=BigDecimal.valueOf(0); BigDecimal b=BigDecimal.valueOf(...原创 2018-05-03 16:30:39 · 87 阅读 · 0 评论 -
dp经典46道题 (持更)
经典题目矩形(1)o the Max http://acm.hdu.edu.cn/showproblem.php?pid=1081 最大子矩阵 把多维转化为一维的最大连续子序列;(HDU1003) (2) Largest Rectangle http://acm.hdu.edu.cn/showproblem.php?pid=1506 对于每一块木板,Area=height[...原创 2018-04-17 21:42:56 · 1873 阅读 · 0 评论 -
图论_最大流_基础_nyoj 323_Drainage Ditches
Drainage Ditches时间限制:1000 ms | 内存限制:65535 KB难度:4描述Every time it rains on Farmer John's fields, a pond forms over Bessie's favorite clover patch. This means that the clover is covered by water for aw...原创 2018-04-10 14:17:20 · 119 阅读 · 0 评论 -
hdu-1106-分割排序
排序Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 69368 Accepted Submission(s): 21363Problem Description输入一行数字,如果我们把这行数字中的‘5’都看成空格,那么就得到一行用空格...原创 2018-04-24 20:18:26 · 104 阅读 · 0 评论 -
nyoj 161 取石子(四)hdu 1527
威佐夫博弈取石子 (四)时间限制:1000 ms | 内存限制:65535 KB难度:4描述有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。输入输入...原创 2018-05-04 13:16:30 · 145 阅读 · 0 评论 -
hdu-1171-Big Event in HDU-一维背包转换为01背包或多重背包(或用母函数解决)
Big Event in HDUTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 47907 Accepted Submission(s): 16464Problem DescriptionNowadays, we all know ...原创 2018-04-17 19:28:33 · 261 阅读 · 0 评论 -
hdu 2089 不要62 -打表
不要62Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 53146 Accepted Submission(s): 20286Problem Description杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer)。杭州交通管理局经...原创 2018-04-24 20:33:05 · 80 阅读 · 0 评论 -
hdu 1176 免费馅饼-数塔升级
免费馅饼Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 59492 Accepted Submission(s): 20877Problem Description都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上...原创 2018-04-20 14:40:16 · 126 阅读 · 0 评论 -
最大子段和(51nod 1049)
1049 最大子段和 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注N个整数组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的连续子段和的最大值。当所给的整数均为负数时和为0。例如:-2,11,-4,13,-5,-2,和最大的子段为:11,-4,13。和为20。Input第1行...原创 2018-08-19 11:16:38 · 128 阅读 · 0 评论 -
数论——nyoj_69 数的长度
1846: 数的长度时间限制: 3 Sec 内存限制: 64 MB提交: 1 解决: 1您该题的状态:未开始[提交][状态][讨论版]题目描述 N!阶乘是一个非常大的数,大家都知道计算公式是N!=N*(N-1)······*2*1.现在你的任务是计算出N!的位数有多少(十进制)?输入首行输入n,表示有多少组测试数据(n<10) 随后n行每行输入一组测试数据 N( 0 < N ...原创 2018-03-28 15:08:28 · 119 阅读 · 0 评论 -
图论_次小生成树_Kruskal算法_nyoj 118_修路方案
修路方案时间限制:3000 ms | 内存限制:65535 KB难度:5描述南将军率领着许多部队,它们分别驻扎在N个不同的城市里,这些城市分别编号1~N,由于交通不太便利,南将军准备修路。现在已经知道哪些城市之间可以修路,如果修路,花费是多少。现在,军师小工已经找到了一种修路的方案,能够使各个城市都联通起来,而且花费最少。但是,南将军说,这个修路方案所拼成的图案很不吉利,想让小工计算一下是否存...原创 2018-04-09 20:05:05 · 166 阅读 · 0 评论 -
数论——数学函数
#include<cmath>/#include<math.h> //头文件(1)求绝对值 int型 abs(x); float/double型 fabs(x);(2)C语言中的log()函数: log()函数是以e为底,log10()是以10为底的,如果想求其他的就要用到换底公式了。 例如求以n为底,m的对数, logn,m=log(m)...原创 2018-04-03 21:16:35 · 342 阅读 · 0 评论 -
贪心——区间不相交——xy_1934 推桌子
1934: 推桌子(nyoj——220)时间限制: 1 Sec 内存限制: 64 MB提交: 10 解决: 5您该题的状态:已完成[提交][状态][讨论版]题目描述The famous ACM (Advanced Computer Maker) Company has rented a floor of a building whose shape is in the following fi...原创 2018-03-31 14:40:13 · 146 阅读 · 0 评论 -
最长公共子序列Lcs(51nod 1006)
给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的)。比如两个串为: abcicbaabdkscab ab是两个串的子序列,abc也是,abca也是,其中abca是这两个字符串最长的子序列。Input第1行:字符串A第2行:字符串B(A,B的长度 <= 1000)Output输出最长的子序列,如果有多个,随意输出1个。In...原创 2018-08-19 09:58:52 · 150 阅读 · 0 评论 -
hdu-1506-直方图
Largest Rectangle in a HistogramTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 20738 Accepted Submission(s): 6319Problem DescriptionA histog...原创 2018-04-24 20:16:12 · 88 阅读 · 0 评论 -
图论——并查集——hdu_1213 How Many Tables
How Many TablesTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 39368 Accepted Submission(s): 19600Problem DescriptionToday is Ignatius' birth...原创 2018-03-30 19:34:59 · 112 阅读 · 0 评论 -
hdu 1466
F-计算直线的交点数HDU - 1466平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数。 比如,如果n=2,则可能的交点数量为0(平行)或者1(不平行)。Input输入数据包含多个测试实例,每个测试实例占一行,每行包含一个正整数n(n<=20),n表示直线的数量. Output每个测试实例对应一行输出,从小到大列出所有相交方案,其中每个数为可能的交点数,每行的整数之间用一个空...原创 2018-05-21 19:45:01 · 215 阅读 · 0 评论 -
威佐夫博弈--基础
一、威佐夫博弈(Wythoff's game)有两堆各若干个物品,两个人轮流从任一堆取至少一个或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。奇异局势:有两个人A和B,假如A是先手,目前两堆石子的剩余个数为a和b(a<b),假如A面对(0,0),(1,2),(3,5),(4,7),(6,10),....这些局势时 A必败,这样的局势就叫奇异局势。自己可以验证一下。...原创 2018-05-04 13:13:52 · 264 阅读 · 0 评论 -
hdu 1231 最大连续子串
最大连续子序列Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 37348 Accepted Submission(s): 16834Problem Description给定K个整数的序列{ N1, N2, ..., NK },其任意...原创 2018-04-18 19:02:46 · 125 阅读 · 0 评论 -
hdu-1203-I NEED A OFFER!-01背包(模板题)
I NEED A OFFER!Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 32766 Accepted Submission(s): 13307Problem DescriptionSpeakless很早就想出国,现在他已经考完了...原创 2018-04-17 19:17:18 · 188 阅读 · 0 评论 -
图论——树
一、无根树转化为有根树1.1 用vector<>数组存储,见ny_20吝啬的国度(用到dfs深搜,转化为以 s 为根结点的树)void dfs(int x){ int i; for(i=0;i<a[x].size();i++){ if(pre[a[x][i]])//如果父节点已经存在 continue;//跳过 pre[a[x][i]]=x;//否则 x为a...原创 2018-05-01 19:09:38 · 550 阅读 · 0 评论 -
hdu-1087-最大递增子序列和
Super Jumping! Jumping! Jumping!Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 46439 Accepted Submission(s): 21516Problem DescriptionNowaday...原创 2018-04-25 21:43:07 · 244 阅读 · 0 评论 -
图论——MST_Kruskal——畅通工程hdu_1863,hdu_1233畅通工程
畅通工程Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 35211 Accepted Submission(s): 15614Problem Description省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不...原创 2018-03-29 20:12:02 · 153 阅读 · 0 评论 -
nyoj——贪心+动态规划基础题(导弹拦截)——xy_1940心急的C小加(ny_236)
1940: 心急的C小加(ny_236)时间限制: 1 Sec 内存限制: 64 MB提交: 5 解决: 4您该题的状态:已完成[提交][状态][讨论版]题目描述C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间,如果第i+1个木棒的重量和长度都大于等于第i个处理的木棒,那么将不会耗费时间,否则需要消耗一个单位的时间。因为急着去约会,C...原创 2018-03-28 15:00:41 · 224 阅读 · 0 评论 -
hdu 1257 最少拦截系统
最少拦截系统Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 52982 Accepted Submission(s): 20749Problem Description某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦...原创 2018-04-25 20:49:51 · 123 阅读 · 0 评论 -
数论——小知识
1.数据类型取值范围unsigned int 0~42 9496 7295 int -2147483648~21 4748 3647 unsigned long 0~4294967295long -2147483648~2147483647long long的最大值:922 3372 0368 5477 5807long long的最小值:-9223372036854775808unsigned ...原创 2018-04-02 19:47:58 · 1848 阅读 · 0 评论 -
动态规划_基础_xyoj 1406_搬寝室
1406: 搬寝室 时间限制: 1 Sec 内存限制: 32 MB提交: 8 解决: 5您该题的状态:已完成[提交][状态][讨论版]题目描述 搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是一个小于2000的整数,实在是太多了,于是xhd决定随便搬2*k件过去就行了.但还是...原创 2018-04-10 14:30:51 · 222 阅读 · 2 评论 -
hdu-1159 Common Subsequence
Common SubsequenceTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 45857 Accepted Submission(s): 21073Problem DescriptionA subsequence of a gi...原创 2018-04-25 18:58:43 · 99 阅读 · 0 评论 -
2018河南高校训练赛(三)问题 E: 魔法交流活动
问题 E: 魔法交流活动时间限制: 1 Sec 内存限制: 128 MB提交: 154 解决: 46[提交][状态][讨论版][命题人:admin]题目描述魔法学校近日开展了主题为“天气晴朗”的魔法交流活动。N名魔法师按阵法站好,之后选取N - 1条魔法链将所有魔法师的魔力连接起来,形成一个魔法阵。魔法链是做法成功与否的关键。每一条魔法链都有一个魔力值V,魔法最终的效果取决于阵中所有魔法链的魔...原创 2018-05-13 17:18:35 · 219 阅读 · 0 评论 -
动态规划-整数划分
1.基础dp 整数划分:1.1基础题目1:输入一个正数n,输出所有和为n连续正数序列。例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5、4-6和7-8。思路:等差数列的求和,an=a1+k-1 ;(a1+a1+k-1)*k=2*n; 先求出k即找出2*n的因子;解的集合与 2n的在[2,sqrt(2n)]区间的几个因子相关。每个因子可能对应一个解-----...原创 2018-04-16 19:18:57 · 1137 阅读 · 0 评论 -
图论_最大二分匹配_Hungary算法基础_nyoj_月老的难题
nyoj——239 月老的难题时间限制:1000 ms | 内存限制:65535 KB难度:4描述月老准备给n个女孩与n个男孩牵红线,成就一对对美好的姻缘。现在,由于一些原因,部分男孩与女孩可能结成幸福的一家,部分可能不会结成幸福的家庭。现在已知哪些男孩与哪些女孩如果结婚的话,可以结成幸福的家庭,月老准备促成尽可能多的幸福家庭,请你帮他找出最多可能促成的幸福家庭数量吧。假设男孩们分别编号为1~...原创 2018-04-09 16:52:21 · 197 阅读 · 0 评论 -
图论——最短路径_Dijkstar——hdu 1874畅通工程续
畅通工程续Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 63386 Accepted Submission(s): 23831Problem Description某省自从实行了很多年的畅通工程计划后,终于修建了很多路。不过路多了也...原创 2018-03-31 21:39:37 · 105 阅读 · 0 评论 -
图论——并查集——hdu_1232畅通工程
畅通工程Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 62698 Accepted Submission(s): 33544Problem Description某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连...原创 2018-03-29 21:19:41 · 142 阅读 · 0 评论 -
图论——MST_Kruskal——ny_38布线问题
题目38题目信息运行结果本题排行讨论区布线问题时间限制:1000 ms | 内存限制:65535 KB难度:4描述南阳理工学院要进行用电线路改造,现在校长要求设计师设计出一种布线方式,该布线方式需要满足以下条件:1、把所有的楼都供上电。2、所用电线花费最少输入第一行是一个整数n表示有n组测试数据。(n<5)每组测试数据的第一行是两个整数v,e.v表示学校里楼的总个数(v<=500)...原创 2018-03-30 10:31:04 · 197 阅读 · 0 评论 -
XYOJ——三个水杯
问题 B: 三个水杯时间限制: 1 Sec 内存限制: 64 MB提交: 25 解决: 14[提交][状态][讨论版]nyoj——21三个水杯题目描述给出三个水杯,大小不一,并且只有最大的水杯的水是装满的,其余两个为空杯子。三个水杯之间相互倒水,并且水杯没有标识,只能根据给出的水杯体积来计算。现在要求你写出一个程序,使其输出使初始状态到达目标状态的最少次原创 2017-11-16 14:08:53 · 404 阅读 · 0 评论 -
nyoj 35 表达式求值(中缀表达式,栈)
表达式求值时间限制:3000 ms | 内存限制:65535 KB难度:4描述ACM队的mdd想做一个计算器,但是,他要做的不仅仅是一计算一个A+B的计算器,他想实现随便输入一个表达式都能求出它的值的计算器,现在请你帮助他来实现这个计算器吧。比如输入:“1+2/4=”,程序就输出1.50(结果保留两位小数)输入第一行输入一个整数n,共有n组测试数据(n<10)。每组测试数据只有一行,是一...原创 2018-04-20 10:04:32 · 414 阅读 · 0 评论 -
动态规划——背包基础题
1414: 集装箱装载时间限制: 1 Sec 内存限制: 128 MB提交: 21 解决: 13[提交][状态][讨论版]题目描述有一批共n个集装箱要装上艘载重量为c的轮船,其中集装箱i的重量为wi。找出一种最优装载方案,将轮船尽可能装满,即在装载体积不受限制的情况下,将尽可能重的集装箱装上轮船。输入第一行有2个正整数n和c。n是集装箱数,c是轮船的载重量。第2行中有n个正整数,表示集装箱的重...原创 2018-03-23 20:26:06 · 763 阅读 · 0 评论 -
hdu-1864 最大报销额 01背包(浮点转化)
最大报销额Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 29827 Accepted Submission(s): 9149Problem Description现有一笔经费可以报销一定额度的发票。允许报销的发票类型包括买图书(A类...原创 2018-04-17 15:17:26 · 168 阅读 · 0 评论 -
nyoj 715 Adjacent Bit (码数+打表)_第六届河南省程序设计大赛
Adjacent Bit Counts时间限制:1000 ms | 内存限制:65535 KB难度:4描述For a string of n bits x1,x2,x3,…,xn,the adjacent bit count of the string is given by fun(x)=x1*x2+x2*x3+x3*x 4+…+xn-1*xnwhich counts the number ...原创 2018-04-30 21:45:47 · 189 阅读 · 0 评论