- 博客(132)
- 收藏
- 关注
原创 51Nod-1002 数塔取数问题【DP】
1002 数塔取数问题基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题一个高度为N的由正整数组成的三角形,从上走到下,求经过的数字和的最大值。每次只能走到下一层相邻的数上,例如从第3层的6向下走,只能走到第4层的2或9上。 5 8 4 3 6 97 2 9 5例子中的最优方案是:5 + 8 +
2017-05-31 23:26:45 724
原创 51Nod-1179 最大的最大公约数【暴力】
1179 最大的最大公约数基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题给出N个正整数,找出N个数两两之间最大公约数的最大值。例如:N = 4,4个数为:9 15 25 16,两两之间最大公约数的最大值是15同25的最大公约数5。Input第1行:一个数N,表示输入正整数的数量。(2 <= N <= 50000)第2 -
2017-05-31 06:34:03 748
原创 51Nod-1018 排序【排序】
1018 排序基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题给出N个整数,对着N个整数进行排序Input第1行:整数的数量N(1 <= N <= 50000)第2 - N + 1行:待排序的整数(-10^9 Output共n行,按照递增序输出排序好的数据。Input示例554321Output示例
2017-05-31 06:22:33 994
原创 51Nod-1126 求递推序列的第N项【递推序列+模除】
1126 求递推序列的第N项基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题有一个序列是这样定义的:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.给出A,B和N,求f(n)的值。Input输入3个数:A,B,N。数字之间用空格分割。(-1
2017-05-30 18:08:27 649
原创 51Nod-1031 骨牌覆盖【递推】
1031 骨牌覆盖基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题在2*N的一个长方形方格中,用一个1*2的骨牌排满方格。问有多少种不同的排列方法。例如:2 * 3的方格,共有3种不同的排法。(由于方案的数量巨大,只输出 Mod 10^9 + 7 的结果)Input输入N(N Output输出数量
2017-05-30 17:14:27 1073
原创 51Nod1682 中位数计数【中位数】
1682 中位数计数基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题中位数定义为所有值从小到大排序后排在正中间的那个数,如果值有偶数个,通常取最中间的两个数值的平均数作为中位数。现在有n个数,每个数都是独一无二的,求出每个数在多少个包含其的区间中是中位数。Input第一行一个数n(n<=8000)第二行n个数,0
2017-05-30 16:35:59 994
原创 HDU2000 ASCII码排序【字符串排序】
ASCII码排序Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 191438Accepted Submission(s): 76494Problem Description输入三个字符后,按各字符的ASCII
2017-05-30 10:26:47 6220
原创 51Nod-1012 最小公倍数LCM【欧几里得算法】
1012 最小公倍数LCM基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题输入2个正整数A,B,求A与B的最小公倍数。Input2个数A,B,中间用空格隔开。(1Output输出A与B的最小公倍数。Input示例30 105Output示例210问题链接:1012 最小公
2017-05-30 06:28:30 2386
原创 51Nod-1011 最大公约数GCD【欧几里得算法】
1011 最大公约数GCD基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题输入2个正整数A,B,求A与B的最大公约数。Input2个数A,B,中间用空格隔开。(1Output输出A与B的最大公约数。Input示例30 105Output示例15问题链接:1011 最大公约数GCD
2017-05-30 06:06:46 1282
原创 AOJ0033 Ball【贪心+序列处理】
図のように二股に分かれている容器があります。1 から 10 までの番号が付けられた10 個の玉を容器の開口部 A から落とし、左の筒 B か右の筒 C に玉を入れます。板 D は支点 E を中心に左右に回転できるので、板 D を動かすことで筒 B と筒 C のどちらに入れるか決めることができます。開口部 A から落とす玉の並びを与えます。それらを順番に筒 B 又は筒 Cに入れていきます。このと
2017-05-29 11:36:48 1681
原创 AOJ0118 Property Distribution【DFS】
タナカ氏が HW アールの果樹園を残して亡くなりました。果樹園は東西南北方向に H × W の区画に分けられ、区画ごとにリンゴ、カキ、ミカンが植えられています。タナカ氏はこんな遺言を残していました。果樹園は区画単位でできるだけ多くの血縁者に分けること。ただし、ある区画の東西南北どれかの方向にとなりあう区画に同じ種類の果物が植えられていた場合は、区画の境界が分からないのでそれらは 1 つの...
2017-05-29 09:35:47 1030
原创 51Nod-1136 欧拉函数【数论】
1136 欧拉函数基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为Euler's totient function、φ函数、欧拉商数等。例如:φ(8) = 4(Phi(8) = 4),因为1,3,5,7均和8互质。Input输入一个数N。
2017-05-29 08:45:00 869
原创 51Nod-1008 N的阶乘 mod P【模除】
1008 N的阶乘 mod P基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题输入N和P(P为质数),求N! Mod P = ? (Mod 就是求模 %)例如:n = 10, P = 11,10! = 36288003628800 % 11 = 10Input两个数N,P,中间用空格隔开。(N Outp
2017-05-29 08:26:41 1474
原创 51Nod-1081 子段求和【前缀和】
1081 子段求和基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题给出一个长度为N的数组,进行Q次查询,查询从第i个元素开始长度为l的子段所有元素之和。例如,1 3 7 9 -1,查询第2个元素开始长度为3的子段和,1 {3 7 9} -1。3 + 7 + 9 = 19,输出19。Input第1行:一个数N
2017-05-26 19:27:21 1368
原创 51Nod-1049 最大子段和【DP】
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。
2017-05-26 17:56:37 866
原创 HDU1061 Rightmost Digit【快速模幂】
问题链接:HDU1061 Rightmost Digit。问题简述:参见上述链接。问题分析:一个简单的快速模幂计算。程序说明:快速模幂计算被封装到一个函数中,直接调用即可。题记:(略)AC的C++语言程序如下:/* HDU1061 Rightmost Digit */#include using namespace std;// 快速模幂
2017-05-26 00:35:28 1284
原创 51Nod-1046 A^B Mod C【快速模幂】
1046 A^B Mod C基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题给出3个正整数A B C,求A^B Mod C。例如,3 5 8,3^5 Mod 8 = 3。Input3个正整数A B C,中间用空格分隔。(1 Output输出计算结果Input示例3 5 8Output
2017-05-26 00:26:27 705
原创 51Nod-1004 n^n的末位数字【快速模幂】
1004 n^n的末位数字题目来源: Author Ignatius.L (Hdu 1061)基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题给出一个整数N,输出N^N(N的N次方)的十进制表示的末位数字。Input一个数N(1 Output输出N^N的末位数字Input示例13
2017-05-26 00:15:00 795
原创 百练分类题解
问题链接:HDU1003 Max Sum。问题简述:参见上述链接。问题分析:计算最大子段和问题,是一个经典的动态规划问题。程序说明:这个算法可以说是最为快速简洁的算法,其计算复杂度为O(n),而且没有使用存储空间来存储序列数据。题记:(略)AC的C++语言程序如下:/* HDU1003 Max Sum */#include using nam
2017-05-25 16:16:50 4836 1
原创 HDU6025 Coprime Sequence【前缀GCD+后缀GCD】
Coprime SequenceTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 1415Accepted Submission(s): 690Problem DescriptionDo yo...
2017-05-25 00:17:01 2135
原创 HDU3194 Median【中位数+排序】
MedianTime Limit: 10000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 497 Accepted Submission(s): 85Problem Description This problem is also easy. Given N n...
2017-05-24 20:12:10 1229
原创 POJ2623 Sequence Median【中位数+排序】
Sequence MedianTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 17909 Accepted: 4964DescriptionGiven a sequence of N nonnegative integers. Let's define the median of such sequence. If N is od...
2017-05-24 19:15:47 1320 3
原创 POJ1723 SOLDIERS【中位数+排序】
ACM ICPC 2018 World FinalsLanguage:SOLDIERSTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 10226 Accepted: 3442DescriptionN soldiers of the land Gridland are randomly scattered around the co...
2017-05-24 17:49:36 1675 1
原创 Vijos P1691 输油管道问题【中位数+排序】
背景想念car的GF,car就出了道水题!描述某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n 口油井的油田。从每口油井都要有一条输油管道沿最短路经(或南或北)与主管道相连。如果给定n口油井的位置,即它们的x 坐标(东西向)和y 坐标(南北向),应如何确定主管道的最优位置,即使各油井到主管道之间的输油管道长度总和最小的位置?编程任务: 给定n 口油井的位置,
2017-05-24 16:42:03 662
原创 UVa834 Continued Fractions【连分数】
问题链接:UVa834 Continued Fractions。问题简述:参见上述链接。问题分析:这是一个分数转换为连分数的问题。需要了解和掌握有关连分数的概念与表示方式,可以查看中英文版的维基百科的“连分数”。剩下的就是简单的分数计算问题了。程序说明:需要考虑特例的情况,例如,分数实际上是整数的情况。程序中不考虑约分的问题。程序中的迭代计算过程
2017-05-24 09:20:02 861
原创 Vijos P1696 数与连分数【连分数】
背景......:“这个简单...我们还是去刚才的海边呗...”...:"其实今晚...我是有一定要完成的事情的..." .,威尼斯真的是一个美丽的城市...很小的时候我就听说这个地方..这一天..从贝鲁特归来的商队..除了布匹和香辛料...还带来的东方的数字....也有人曾经讨论过它们的历史...只是很长时间这些都不被那些数学家们所重视..人们怀着敬畏的心情.
2017-05-24 08:59:10 1497
原创 Vijos P1335 数独验证【谜题】
背景XX学校风靡一款智力游戏,也就是数独(九宫格),先给你一个数独,并需要你验证是否符合规则。描述具体规则如下:每一行都用到1,2,3,4,5,6,7,8,9,位置不限,每一列都用到1,2,3,4,5,6,7,8,9,位置不限,每3×3的格子(共九个这样的格子)都用到1,2,3,4,5,6,7,8,9,位置不限,游戏的过程就是用1,2,3,4,5,6,7,8,9填充空白
2017-05-23 22:57:27 1331
原创 Vijos P1409 纪念品分组【贪心】
描述元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得 的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品, 并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时间内发完所有纪念品,乐乐希望分组的数目最少。你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。【限制】 5
2017-05-21 22:57:22 944
原创 Vijos P1097 合并果子【哈夫曼树+优先队列】
描述在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。 每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1次合并之后,就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。假定
2017-05-21 22:31:20 683
原创 POJ3253 Fence Repair【哈夫曼树+优先队列】
Fence RepairTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 48026 Accepted: 15784DescriptionFarmer John wants to repair a small length of the fence around the pasture. He measures the fence ...
2017-05-21 20:15:57 1217
原创 POJ3069 Saruman's Army【贪心】
问题链接:POJ3069 Saruman's Army。题意简述:直线上有N个点。点i的距离是Xi。从这N个点中选取若干点加上标记。对于每个点,与其距离为R的范围内必有做标记的点(包括自身)。求至少标记多少点才能满足要求。问题分析:这个问题可以用贪心法来解决。先将各个点排序,从小到大顺序找必须标记的点,并且将其距离R以内的点排除。反复这个过程即可。程序说明:(略)
2017-05-21 11:51:16 1484
原创 NUC1445 Euclid's Game【博弈】
Euclid's Game时间限制: 1000ms 内存限制: 65535KB问题描述Two players, Stan and Ollie, play, starting with two natural numbers. Stan, the first player, subtracts any positive multiple of the lesser of the tw
2017-05-20 20:13:39 676
原创 UVa10006 Carmichael Numbers【素数判定+快速模幂】
问题链接:UVa10006 Carmichael Numbers。问题简述:参见上述链接。问题分析:这是一个卡尔迈勒数判定问题,只要读懂题意就简单了。卡尔迈勒数是数论中的一个重要概念。程序说明:函数isprime()不是一个真正意义上的素数判断函数,只进行奇数判定,对于本题条件是没有问题的。函数powermod()是模幂计算函数。AC的C++语言
2017-05-20 19:29:50 1125
原创 UVALive2203 UVa10042 Smith Numbers【质因数分解+素数判定+数位之和】
While skimming his phone directory in 1982, Albert Wilansky, a mathematician of Lehigh University, noticed that the telephone number of his brother-in-law H. Smith had the following peculiar property:...
2017-05-20 18:09:00 1250
原创 POJ1142 HDU1333 ZOJ1133 Smith Numbers【质因数分解+素数判定+数位之和】
问题链接:POJ1142 HDU1333 ZOJ1133 Smith Numbers。题意简述:寻找大于输入数并且最接近的Smith Numbers。问题分析:Smith Numbers数不是素数,其各位数字之和等于其各个因子的各位数字之和。。程序说明:函数digitsum()用于计算数的各位数字之和。函数fact_digitsum用于计算数的各个因子的数字之和,但
2017-05-20 18:01:48 1560 1
原创 HDU5428 The Factor【分解质因子】
The FactorTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 2969 Accepted Submission(s): 920Problem Description There is a sequence of n positi...
2017-05-20 17:02:07 1133
原创 POJ3421 X-factor Chains【分解质因子+组合数学】
问题链接:POJ3421 X-factor Chains。题意简述:输入正整数x,求x的因子组成的满足任意前一项都能整除后一项的序列的最大长度,以及所有不同序列的个数。问题分析:首先要对x进行因子分解。这样可以得到总的因子个数c,不同的因子为f1,f2,...,fn其次方数分别为e1,e2,...,en。那么,不同序列的个数为c!/(e1!e2!......en!)。程序说
2017-05-20 08:56:55 2657 1
原创 POJ3292 UVA11105 Semi-prime H-numbers【筛法打表】
问题链接:POJ3292 UVA11105 Semi-prime H-numbers。问题简述:参见上述链接。问题分析:H-number:4n+1的数,n>=0,例如1,5,9,13,17,21,......。H-prime:H-number数并且其因子只有1和它本身。H-semi-prime:两个H-prime的乘积。H-composite:其他H-number数。...
2017-05-20 06:16:09 785
原创 POJ1995 ZOJ2150 Raising Modulo Numbers【快速模幂】
Raising Modulo NumbersTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 8010 Accepted: 4875DescriptionPeople are different. Some secretly read magazines f
2017-05-20 05:00:40 879
原创 POJ3641 UVA11287 HDU1905 Pseudoprime numbers【素数判定+快速模幂】
问题链接:POJ3641 UVA11287 HDU1905 Pseudoprime numbers。问题简述:参见上述链接。问题分析:这个问题是验证伪素数问题。p是伪素数的条件是,p不是素数并且满足ap = a (mod p)。伪素数是数论中与费尔马小定理有关的一个重要概念。程序说明:函数isprime()不是一个真正意义上的素数判断函数,只进行奇数判定,对于本
2017-05-20 00:17:03 734
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人