数论******************
文章平均质量分 53
「已注销」
我的目标 离我还有多远我的梦想 有点遥不可及我要用十倍苦心做最突出一个我不能退缩 不管路多艰难 我都要努力我要靠自己的双手去做自己喜欢做的事我要靠自己的努力去我想去的地方旅游我还年轻 我还可以去奋斗
展开
-
hdu2073-无限的路
http://acm.hdu.edu.cn/showproblem.php?pid=2073注意返回值#include#include#include#includeusing namespace std ;double fun( int x , int y ){ double sum = 0.0; int i ; double ans = 0.0 ; doubl原创 2013-05-19 19:45:04 · 1219 阅读 · 0 评论 -
hdu2086-A1 = ?
http://acm.hdu.edu.cn/showproblem.php?pid=2086推出公式为( n + 1 ) * a1 + 2 * ( c1 + c1+c2+cq+c2+c3+......+cn) = n * a0 + an #include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.原创 2013-05-21 18:07:54 · 1032 阅读 · 0 评论 -
hdu4432 - Sum of divisors
http://acm.hdu.edu.cn/showproblem.php?pid=4432下面一种是直接模拟,一种就是进行优化了;理解题意即可:给你两个数:n 和m 先将n转换成m进制数,然后将各个位置上的数值平方求和,最后在按照m进制输出即可#include "stdio.h"#include "string.h"#include "stdlib.h"#inclu原创 2013-05-21 12:42:35 · 1132 阅读 · 0 评论 -
hdu1134-Game of Connections
http://acm.hdu.edu.cn/showproblem.php?pid=1134catalan数#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"#include "algorithm"#include "iostream"using namespace std;原创 2013-05-21 21:07:21 · 1037 阅读 · 0 评论 -
hdu4438 - Hunters
http://acm.hdu.edu.cn/showproblem.php?pid=4438分情况讨论:A:表示Alice打tiger时 :a、Bob打tiger的概率为q , 那么得分为 q * (1 - p ) * p * x + q * p * p * x + q * ( 1 - p ) * p * y + q * p * p* y ; ;b、Bpb打wolf的概率为原创 2013-05-21 13:57:21 · 1266 阅读 · 0 评论 -
hdu1130-How Many Trees?
http://acm.hdu.edu.cn/showproblem.php?pid=1130catalan数#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"#include "algorithm"#include "iostream"using namespace std原创 2013-05-21 21:03:46 · 1120 阅读 · 0 评论 -
hdu1023-Train Problem II
http://acm.hdu.edu.cn/showproblem.php?pid=1023卡特兰数#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"#include "algorithm"#include "iostream"using namespace std;co原创 2013-05-21 21:02:06 · 910 阅读 · 0 评论 -
母函数
定义 [编辑]母函数就是一列用来展示一串数字的挂衣架— 赫伯特·维尔夫, [1]普通母函数 [编辑]普通母函数就是最常见的母函数。一般来说,序列的母函数是:如果 是某个离散随机变量的概率质量函数,那么它的母函数被称为一个概率母函数。多重下标的序列也可以有母函数。例如,序列 的母函数是。指数母函数 [编辑]原创 2013-05-22 13:47:26 · 1268 阅读 · 0 评论 -
hdu2076-夹角有多大(题目已修改,注意读题)
http://acm.hdu.edu.cn/showproblem.php?pid=2076按照不同单位转一圈,然后转换成某一个统一的单位换算即可#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"#include "algorithm"#include "iostream"usin原创 2013-05-22 21:47:24 · 1954 阅读 · 0 评论 -
hdu1085-Holding Bin-Laden Captive!
http://acm.hdu.edu.cn/showproblem.php?pid=1085#include#include#includeusing namespace std;int num[ 10 ] ;int c1[ 100000 ] , c2[ 100000 ] ;int main(){ int i , j , k ; while( cin >> num[ 1原创 2013-05-29 13:40:10 · 1303 阅读 · 0 评论 -
母函数详解
母函数(Generating function)详解在数学中,某个序列的母函数是一种形式幂级数,其每一项的系数可以提供关于这个序列的信息。使用母函数解决问题的方法称为母函数方法。母函数可分为很多种,包括普通母函数、指数母函数、L级数、贝尔级数和狄利克雷级数。对每个序列都可以写出以上每个类型的一个母函数。构造母函数的目的一般是为了解决某个特定的问题,因此选用何种母函数视乎序列本身原创 2013-05-28 22:19:51 · 2314 阅读 · 0 评论 -
hdu1398-Square Coins
http://acm.hdu.edu.cn/showproblem.php?pid=1398#include#include#includeusing namespace std ;const int maxn = 305 ;int c1[ maxn ] , c2[ maxn ] ;int main(){ int n ; int i , j , k ; while(原创 2013-05-29 12:53:51 · 1154 阅读 · 0 评论 -
hdu1007-Quoit Design
http://acm.hdu.edu.cn/showproblem.php?pid=1007#include#include#include#include#includeusing namespace std ;const int maxn = 1000001 ;const int INF = 1000000001 ;struct Point{ double x ,原创 2013-05-29 20:43:55 · 999 阅读 · 0 评论 -
hdu1081-To The Max
http://acm.hdu.edu.cn/showproblem.php?pid=1081DP,最大矩阵和,首先将横坐标的数值,分别求和存储在二维数组中,然后使用三个for循环,第一二层分别表示第I 横层 ,和第j 横层,然后做差,就求出了纵坐标的和,当sum〉0就由k 向右累加;#include#include#includeusing namespace std ;int原创 2013-06-09 14:33:41 · 1280 阅读 · 0 评论 -
hdu1250-Hat's Fibonacci
http://acm.hdu.edu.cn/showproblem.php?pid=1250二维大数处理#include#include#include#includeusing namespace std ;#define maxm 10005#define maxn 305 int fi[ maxm ][ maxn ] ;void Add(){ memset(原创 2013-06-08 16:51:11 · 1104 阅读 · 0 评论 -
hdu3501-Calculation 2
http://acm.hdu.edu.cn/showproblem.php?pid=3501这题参考了别人的代码,才知道原来当数据较大时求解前n 项的欧拉函数和,可以直接利用 n * enlerfun( n) / 2求解,而此题要求的是非互质的,同样可以使用这个性质#include#include#includeusing namespace std ;#define MOD原创 2013-06-08 14:07:42 · 1133 阅读 · 0 评论 -
hdu1060-Leftmost Digit
http://acm.hdu.edu.cn/showproblem.php?pid=1060#include#include#includeusing namespace std ;int main(){ double temp ; int Case , n ; __int64 ans ; cin >> Case ; { while( Case-- ) {原创 2013-06-09 14:35:18 · 927 阅读 · 0 评论 -
hdu1061-Rightmost Digit(附20循环的规律解法和附快速幂简单原理)
http://acm.hdu.edu.cn/showproblem.php?pid=10611.快速幂实现a^N求3^999(a=3,N=999):3 ^ 999 = 3 * 3 * 3 * … * 3,直接乘要做998次乘法。快速幂方法实质使用了二分法进行时间优化: tmp+ = tmp-* a-;3 ^ 1 = 3* 13 ^ 2 = (3原创 2013-06-09 15:45:21 · 2525 阅读 · 7 评论 -
hdu3117-Fibonacci Numbers
http://acm.hdu.edu.cn/showproblem.php?pid=3117后四位存在周期15000,所以就打表打出了后四位的值。前四位按照Fibonacci的通项公式取前四位即可#include#include#include#includeusing namespace std;int fi[ 100 ] = { 0 , 1 , 1 } ;int L原创 2013-06-08 18:58:02 · 761 阅读 · 0 评论 -
hdu1174-爆头
http://acm.hdu.edu.cn/showproblem.php?pid=1174之前没搞懂,想得太复杂了,从网上查了很多代码,但是很混乱,各种方法都有,不过,最终还是理清楚了 ;其中,就被高数中点向法,还有其他几种解法造成的误解最大;不过,最终又是在斌神的博客中找到了较好的方法http://www.cnblogs.com/kuangbin/archive/2011/08/12/原创 2013-06-09 22:27:46 · 1160 阅读 · 0 评论 -
hdu1030-Delta-wave
http://acm.hdu.edu.cn/showproblem.php?pid=1030数学题,确定层数差 a1 ,还有左差(从三角形的左边排列看属于第几层的差)b1 ,右差c1;最后求和即可#include#include#include#includeusing namespace std ;int main(){ int n , m ; while( ci原创 2013-05-31 16:45:42 · 959 阅读 · 0 评论 -
hdu2060-Snooker
http://acm.hdu.edu.cn/showproblem.php?pid=2060题意为,给你场上剩下的球数m , 和 a ,b 两名队员目前得分,现在假设a将所有的球m都打入洞中,然后让你输出是否最终a的得分会超过b; 总共有15个红球,和6个有颜色的球,每个红球的得分为1 ,6个有颜色的球分别为2 , 3, 4 ,5, 6, 7 ;原创 2013-06-09 18:16:07 · 1127 阅读 · 0 评论 -
hdu1098-Ignatius's puzzle
http://acm.hdu.edu.cn/showproblem.php?pid=1098#include#include#includeusing namespace std;int main(){ int k ; while( scanf( "%d" , &k ) != EOF ) { if( k % 65 == 0 ) { printf( "no\原创 2013-06-09 20:01:45 · 1004 阅读 · 0 评论 -
poj1061-青蛙的约会
http://poj.org/problem?id=1061原理参照扩展欧几里得算法#include#include#include#include#include#define LL long long using namespace std; LL int x , y , m , n , l ;LL xx , yy , mm , nn , ll , c , d ;L原创 2013-06-04 20:23:40 · 974 阅读 · 0 评论 -
hdu1576-A/B
http://acm.hdu.edu.cn/showproblem.php?pid=15761、了解扩展欧几里德算法,可以运用其解出gcd(a,b)=ax1+by1中的x1、y1的值2、由题可得以下内容:n=A%9973,则n=A-A/9973*9973。又A/B=x,则A=Bx。所以Bx-A/9973*9973=n。即Bx-9973y=n。到这里我们可以发现:原创 2013-06-04 21:32:14 · 1082 阅读 · 0 评论 -
hdu2669-Romantic
http://acm.hdu.edu.cn/showproblem.php?pid=2669#include#include#include#include#includeusing namespace std ;#define INT __int64 INT x , y , c , d ;INT a , b ;INT exgcd( INT a ,INT b , IN原创 2013-06-04 22:12:51 · 1410 阅读 · 0 评论 -
Problem 1165 - Smith Number
http://acm.whu.edu.cn/land/problem/detail?problem_id=1165#include#includeusing namespace std ;#define INT long long INT Sum( INT x ){ INT sum = 0 ; while( x ) { sum += x % 10 ; x /=原创 2013-06-05 20:06:06 · 2273 阅读 · 0 评论 -
hdu1222-Wolf and Rabbit
http://acm.hdu.edu.cn/showproblem.php?pid=1222将环转换成首尾相接无限延长的直线...........1,2,3,4........n , 1, 2, 3, 4,.....n ,1, 2, 3 , 4,..........如果需要找到兔子,就以为着需要遍历所有的山洞,而且每一次所到达的山洞的位置,不能是相同的,否则,就会产生“死”循环。假设原创 2013-06-05 21:17:12 · 1227 阅读 · 0 评论 -
hdu4180-RealPhobia
http://acm.hdu.edu.cn/showproblem.php?pid=4180题意为给定一个数(a/b),求另一个(c/d) ,要求d 当 a 与 b 互质的时候 ,有a * d + 1 == b * c || a * d == b * c + 1 ; 然后通过exgcd 求出c 和 d 然后比较d的大小,最后输出结果;需要注意的是,这只是其中的一种情况, 当a原创 2013-06-05 22:23:37 · 1466 阅读 · 0 评论 -
hdu1333/poj1142-Smith Numbers
http://poj.org/problem?id=1142http://acm.hdu.edu.cn/showproblem.php?pid=1333#include#include#include#include#includeusing namespace std;int Sum( int x ){ int sum = 0 ; while( x ) {原创 2013-06-05 19:46:57 · 1210 阅读 · 0 评论 -
hdu1164-Eddy's research I
http://acm.hdu.edu.cn/showproblem.php?pid=1164题目比较水,但是还是发现一些小问题 ;细节。。注重细节#include#include#include#include#includeusing namespace std ;#define INT __int64bool judge( INT n ){ for( INT i原创 2013-06-06 11:01:30 · 1223 阅读 · 0 评论 -
hdu1165-Eddy's research II
http://acm.hdu.edu.cn/showproblem.php?pid=1165#include#include#include#include#includeusing namespace std ;#define INT __int64INT dfs( INT m , INT n ){ if( n == 0 ) dfs( m -原创 2013-06-06 12:45:19 · 983 阅读 · 0 评论 -
hdu1163-Eddy's digital Roots
http://acm.hdu.edu.cn/showproblem.php?pid=1163这道题目本来没有看到 n ^ n ,所以直接写,TLE了,但是突发奇想,能不能在n 累乘的过程中,直接求出各位数值和,在继续乘以 n ,直到 乘了n次;但是没有搞懂原理,后来问了dogdog,才知道了原理;假设 前两位大于10 相乘为ab(因为有一项满足,其余的肯定也能通过同一个原理证明出来);利用原创 2013-06-06 14:58:54 · 781 阅读 · 0 评论 -
poj2478-Farey Sequence
http://poj.org/problem?id=2478素数筛法+欧拉函数#include#include#includeusing namespace std; #define maxn 1000005 #define INT __int64 int Prime[ maxn + 1 ] ;INT ans[ maxn + 1 ] ;void prime(){原创 2013-06-07 14:46:21 · 1041 阅读 · 0 评论 -
poj3090-Visible Lattice Points
http://poj.org/problem?id=3090法雷级数,,欧拉函数#include#include#includeusing namespace std; #define maxn 1000005 #define INT __int64 int Prime[ maxn + 1 ] ;INT ans[ maxn + 1 ] ;void prime()原创 2013-06-07 18:43:11 · 1094 阅读 · 0 评论 -
hdu1286-找新朋友
http://acm.hdu.edu.cn/showproblem.php?pid=1286本来可以直接用普通的欧拉函数,但是,这个那样非常容易TLE,所以用素数筛法+欧拉函数;#include#include#include#includeusing namespace std ;#define maxn 100005int prime[ maxn + 1 ] ;int原创 2013-06-07 22:01:44 · 829 阅读 · 0 评论 -
hdu1568-Fibonacci
http://acm.hdu.edu.cn/showproblem.php?pid=1568用到了斐波那契数列的通项公式。先看对数的性质,loga(b^c)=c*loga(b),loga(b*c)=loga(b)+loga(c);假设给出一个数10234432,那么log10(10234432)=log10(1.0234432*10^7)=log10(1.0234432)+7;原创 2013-06-08 16:08:38 · 1057 阅读 · 0 评论 -
hdu1492-The number of divisors(约数) about Humble Numbers
http://acm.hdu.edu.cn/showproblem.php?pid=1492这道题目就是一道数学题,题意大致为问某个数是否为“谦虚数”,就是满足所有的因子都是由2 , 3 , 5 , 7 这四个质因子所组成的数据,然后问这个数有多少个因子;解法:就是将数据拆分,统计每个素因子的个数,然后直接相乘即可,至于为什么,自己看数论有关书籍。需要注意的就是最后直接取余统计的话,最原创 2013-07-15 10:10:32 · 1643 阅读 · 0 评论 -
hdu1573-X问题
http://acm.hdu.edu.cn/showproblem.php?pid=1573中国剩余定理#include#include#include#include#includeusing namespace std;int a[ 11 ] , b[ 11 ] ;#define INT __int64int gcd( int a , int b ){ re原创 2013-07-15 16:18:54 · 1432 阅读 · 1 评论 -
zoj1007-Numerical Summation of a Series
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=7题意就是按照题目公式计算f(x) - f(1 )的值,需要控制精度;j的取值范围控制到10000即可;需要#include#include#include#include#include#includeusing namespace std;int mai原创 2013-07-16 10:07:12 · 975 阅读 · 0 评论