通用模板
文章平均质量分 70
「已注销」
这个作者很懒,什么都没留下…
展开
-
bzoj 3288 欧拉函数线性筛法
3288: Mato矩阵Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 348 Solved: 269[Submit][Status][Discuss]DescriptionMato同学最近正在研究一种矩阵,这种矩阵有n行n列第i行第j列的数为gcd(i,j)。例如n=5时,矩阵如下:1 1 1 1 11原创 2017-11-21 21:16:54 · 363 阅读 · 0 评论 -
poj 1251 prim or kruskal
Jungle RoadsTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 23774 Accepted: 11149DescriptionThe Head Elder of the tropical island of Lagrishan has原创 2016-07-29 15:35:06 · 439 阅读 · 0 评论 -
poj 2352 线段树 二分
StarsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 41422 Accepted: 18050DescriptionAstronomers often examine star maps where stars are represented b原创 2016-07-27 15:32:11 · 356 阅读 · 0 评论 -
hdu 1695 莫比乌斯反演
GCDTime Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 10197 Accepted Submission(s): 3848Problem DescriptionGiven 5 integers: a, b, c原创 2016-11-13 18:34:46 · 356 阅读 · 0 评论 -
素数筛选法 poj1164
一般思路int primenumber(int x){ if(x==1) return 0; int m=sqrt(double(x)); for(int i=2;i<=m;i++){ if(x%i==0){ return 0; } } return 1;}素数筛选法原创 2016-02-01 00:11:42 · 527 阅读 · 0 评论 -
hdu 5187 快速乘方 快速乘法
zhx's contestTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 2055 Accepted Submission(s): 665Problem DescriptionAs one of the原创 2016-11-09 22:01:10 · 407 阅读 · 0 评论 -
poj 2407 欧拉函数
RelativesTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 13531 Accepted: 6724DescriptionGiven n, a positive integer, how many positive integers less t原创 2016-08-12 21:34:55 · 351 阅读 · 0 评论 -
poj 2478 欧拉函数筛选
Language:DefaultFarey SequenceTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 14952 Accepted: 5927DescriptionThe Farey Sequence Fn for any integer原创 2016-08-13 10:06:55 · 427 阅读 · 0 评论 -
扩展欧几里得算法
用类似辗转相除法,求二元一次不定方程 { 47x+30y=1} 的整数解47 = 30 * 1 + 1730 = 17 * 1 + 1317 = 13 * 1 + 413 = 4 * 3 + 1 //这里的 1 表示最小公约数然后把它们改写成“余数等于”的形式17 = 47 * 1 + 30 * (-1) //式113原创 2016-08-11 15:13:34 · 365 阅读 · 0 评论 -
gcd 模板 以及最小公倍数
int gcd(int a,int b) //注意这里a,b的大小关系{ if(b==0) return a; else return gcd(b,a%b);}原来两个数a,b的乘积除以最大公约数为最小公倍数原创 2016-02-01 00:10:53 · 2522 阅读 · 0 评论 -
第一类斯特林数 hdu 3625
Examining the RoomsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1602 Accepted Submission(s): 975Problem DescriptionA murder ha原创 2017-05-27 03:18:10 · 393 阅读 · 0 评论 -
计算几何之大圆包含小圆问题
题意:给出一个大圆,n个小圆 #include#include#include#includeusing namespace std;#define MAXN 100005#define LL long longpairp[MAXN*2];int main(){ int n,R,T; int x,y,r; freopen原创 2017-05-28 12:29:36 · 8862 阅读 · 0 评论 -
uva 10375 质数筛选 质数分解 lrj-P316
题意:求解C(p,q)/ C(r,s),保留五位小数题解:刘汝佳老师的代码真的很好,思路很清晰,好好品味,好好学习#include#include#include#includeusing namespace std;#define MAXN 10010#define LL long longconst LL mod=1000000007原创 2017-09-18 17:19:47 · 491 阅读 · 0 评论 -
uva 12169 ex_gcd lrj—P316
题意:给出一个递推式,通过这个递推式可以得到一系列数,但是题目只给出位置为奇数的数字(从1开始),求偶数位置的数题解:枚举+扩展欧几里得通过学习,发现刘汝佳的这本书简直是神书,以前在网上找了很久的资料才看懂的算法他居然三言两语就解决了我疑惑的地方,以后就会用这个算法了扩展欧几里得算法是解决 求解ax+by=c 这个函数的整数解 x y当 c 是gc原创 2017-09-18 16:51:52 · 596 阅读 · 0 评论 -
hdu 2089 数位dp入门
不要62Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 45628 Accepted Submission(s): 17164Problem Description杭州人称那些傻乎乎粘嗒嗒的人为62(音:lao原创 2017-08-25 16:59:42 · 348 阅读 · 0 评论 -
51nod 判断线段是否相交 poj Segments直线与多条线段相交
给出两条线段的端点,判断是否相交包括端点处的判断若不包括端点处的,就在下面判断相交函数中去掉等号#include#include#includeusing namespace std;const double eps=1e-8;struct Point{ double x,y; Point(){} Point(doubl原创 2017-05-22 11:15:23 · 425 阅读 · 0 评论 -
hdu2512 第二类斯特林数
题意:给出n个卡,求这些卡放在一个包里面的方法数 + 放在两个包的方法数 + 放在三个包的方法数 。。。。放在n个包的方法数 的总和题解:模板题第二类斯特拉数将p个物体排成k个非空集合排列的方法数。s(p,0)=0 ,p>=1 ;s(p,p)=1 ,p>=0。递推式:s(p,k)=k*s(p-1,k)+s(p-1,k-1) ,1原创 2017-05-27 03:43:30 · 493 阅读 · 0 评论 -
B - Flowery Trails Gym - 100783B 堆优化最短路 单源到各个点最短路
题意:计算 1 和 n 两点间最短路的路径和的两倍题解:1 计算最短路2 枚举没一条边到两端的距离加上本身长度,判断是等于最短路长度3 若是的,那么这条边可以当做最短路的一条边下面是堆优化最短路(源点到各个点的最短路):#include#include#include#include#includeusing nam原创 2017-06-07 18:56:20 · 568 阅读 · 0 评论 -
多边形面积 尺取法 B - Birthday Cake Gym - 100090B
题意:给出一个多边形,顶点按照逆时针给出让你选择两个点,使这两个点连线尽可能均分多边形面积题解:先求总面积,以及前缀面积和,然后运用尺取法这里很好的运用了叉积的性质,因为叉积可以将不属于多边形的面积正负进行抵消然后在运用尺取法的时候可以很容易求解顶点 i j 连线后其中一半的面积这里注意尺取法的时候要处理超出面积一半的情况,因为超出面积一半的时候也可能是最小的原创 2017-05-22 01:29:58 · 422 阅读 · 0 评论 -
FFT 模板 大数相乘
大数乘法基准时间限制:2 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注给出2个大整数A,B,计算A*B的结果。Input第1行:大数A第2行:大数B(A,B的长度 = 0)Output输出A * BInput示例123456234567Output示例2895870原创 2017-06-06 05:26:45 · 925 阅读 · 0 评论 -
Graham算法模板 F 题Saint John Festival 20152016-acmicpc-southwestern-europe-regional-
题目就是要求解有多少个点可以被至少一个三角形围住,这个点可以在三角形的边上题解:每一个点肯定会在最大的凸包里面,所以我们求解一个凸包,然后二分点,寻找这样的三角形即可#include#include#include#include#includeusing namespace std;#define MAXN 10005const double eps=原创 2017-05-19 12:42:32 · 837 阅读 · 0 评论 -
hdu 2035 (快速乘方)快速乘方取模
人见人爱A^BTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 35507 Accepted Submission(s): 24132Problem Description求A^B的最后三位数表示的整数。原创 2016-08-08 18:08:06 · 1455 阅读 · 0 评论 -
poj 2635 素数打表+同余求模定理+千进制
The Embarrassed CryptographerTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 13831 Accepted: 3762DescriptionThe young and very promising cryptographer原创 2016-07-24 21:58:40 · 606 阅读 · 0 评论 -
KMP 模板
#include#include#includeusing namespace std;char a[10005],b[1000005];int nexta[10005];void getnext(){ int len=strlen(a); nexta[0]=-1; int k=-1; int j=0; while(j { if(k==-1||a[原创 2016-02-01 00:12:11 · 293 阅读 · 0 评论 -
进制转化 poj1220 poj3191
Sample Input862 2 abcdefghiz10 16 123456789012345678901234567890123456789016 35 3A0C92075C0DBF3B8ACBC5F96CE3F0AD235 23 333YMHOUE8JPLT7OX6K9FYCQ8A23 49 946B9AA02MI37E3D3MMJ4G7BL2F0549 61 1VbDkS原创 2016-05-05 17:50:27 · 788 阅读 · 0 评论 -
全排列递归(搜索)以及库函数的应用 递归例题poj1731
#includevoid swapp(int a[],int i,int j){ printf("%d %d###\n",a[i],a[j]); int temp=a[i]; a[i]=a[j]; a[j]=temp; printf("%d %d###\n",a[i],a[j]);}void perm(int a[],int k,int m){ if(k==m) { for(int i=0;i原创 2016-02-01 00:11:04 · 580 阅读 · 0 评论 -
poj 1750 在线处理模板
#include#includeint main(){ char a[10],b[10],c[10]; int temp,t=0; a[0]='\0'; while(scanf("%s",b)!=EOF) { temp=0; for(int i=0;(istrlen(c))&&(istrlen(b));i++) { if(a[i]==b[i]) temp++; else原创 2016-02-01 00:10:56 · 397 阅读 · 0 评论 -
hdu1028 poj1221 母函数 整数的拆分
母函数对于初学者比较难以理解杭电oj上面有一篇写的比较好的链接为http://acm.hdu.edu.cn/discuss/problem/post/reply.php?postid=21943&messageid=1&deep=0下面就是这位大神些的://母函数//G(x) = (1 + x^1 + x^2..+x^n)(1 + x^2 + x^4 + x^6 +原创 2016-03-23 19:42:54 · 796 阅读 · 0 评论 -
约瑟夫问题各种求解方式
第一种就是很简单的公式运用,网上的代码,不能够证明和理解,所以当做模板用吧#include int main(){ int n,i=0,m,p; scanf("%d%d",&n,&m); //n总人数,m步长 while(++i<=n) { p=i*m; while(p>n) p=p-n转载 2016-03-06 20:49:58 · 1102 阅读 · 0 评论 -
poj1102数字打印,七段数字码
题目很简单理解,方法需要掌握好就行了,这一类题目基本上没有问题了这里我在函数里面是打印一行的主函数里面是控制打印多少行初次理解我建议调试理解程序运行,并且看怎么一步步打印出来不多说,上代码#include#includeusing namespace std;char coding[6][31]={{" - - - - - - - - "},原创 2016-03-06 12:17:11 · 811 阅读 · 0 评论 -
poj 2388 堆排序
找中位数#include#include#includeusing namespace std;#define father(i) (i>>1)#define left(i) (i<<1)#define right(i) (i<<1|1)#define swap(a,b) {int t=a;a=b;b=t;}int heap_size;int a[10010];原创 2016-07-28 09:55:14 · 632 阅读 · 0 评论 -
中国剩余定理 poj 1006 poj2891
BiorhythmsTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 129686 Accepted: 41277DescriptionSome people believe that there are three cycles in a person原创 2016-08-19 10:20:20 · 760 阅读 · 0 评论 -
poj 1061 扩展gcd
青蛙的约会Time Limit: 1000MS Memory Limit: 10000KTotal Submissions: 107169 Accepted: 21361Description两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直原创 2016-08-18 10:25:28 · 379 阅读 · 0 评论 -
poj 3268 SPFA
Silver Cow PartyTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 18421 Accepted: 8434DescriptionOne cow from each of N farms (1 ≤ N ≤ 1000) convenientl原创 2016-08-03 10:37:33 · 383 阅读 · 0 评论 -
poj 3259 Bellman-ford + SPFA
WormholesTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 43809 Accepted: 16085DescriptionWhile exploring his many farms, Farmer John has discovered a转载 2016-08-02 11:35:33 · 403 阅读 · 0 评论 -
poj 2309 按位与 &(以x为根的满二叉搜索树的最小节点编号、最大节点编号)
1 & 1 = 10 & 1 = 00 & 0 = 0按位与就是那一位全部是 1 的时候是为 1 - x 表示为 x 的补码 +1 例如 x = 8时 : x 0 0 0 1 1 0 0 0 - x 1 1 1 0 1 0 0 0整数运算 x&(-x):原创 2016-07-31 18:22:10 · 630 阅读 · 0 评论 -
poj 1182 推理 || 简单方法
食物链Time Limit: 1000MS Memory Limit: 10000KTotal Submissions: 62634 Accepted: 18380Description动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动转载 2016-07-24 19:52:36 · 386 阅读 · 0 评论 -
poj 1125 Floyd
Stockbroker GrapevineTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 33870 Accepted: 18721DescriptionStockbrokers are known to overreact to rumours. You原创 2016-08-03 15:31:31 · 311 阅读 · 0 评论 -
poj 2367 topo 排序
Genealogical treeTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 4582 Accepted: 3033 Special JudgeDescriptionThe system of Martians' blood relatio原创 2016-07-29 22:12:03 · 398 阅读 · 0 评论 -
poj 2387 Dijkstra入门(动态图解)
Til the Cows Come HomeTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 43861 Accepted: 14902DescriptionBessie is out in the field and wants to get back转载 2016-07-28 15:24:12 · 2174 阅读 · 0 评论