自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(45)
  • 收藏
  • 关注

原创 hdu 1659 综合数论+ 筛选欧拉函数 +质因子 +容斥原理

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1695GCDTime Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4947    Accepted Submission(s): 1772

2014-03-13 12:58:15 583

原创 hdu 1796 容斥原理

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1796How many integers can you findTime Limit: 12000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 3539    Ac

2014-03-13 12:58:13 549

原创 hdu 2136 数论+筛选质数+打表

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=2136Largest prime factorTime Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6237    Accepted Su

2014-03-13 12:58:11 357

原创 hdu 数论+ 欧拉函数 1787

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1787GCD AgainTime Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2239    Accepted Submission(s):

2014-03-13 12:58:09 422

原创 hdu 1215 数论 +打表

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1215七夕节Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 26672    Accepted Submission(s): 828

2014-03-13 12:58:07 389

原创 hdu 1452 因子和 + 逆元素+ 快速幂

分析:1:因子和  是 积性函数S(x) ,即 gcd(a , b ) =1  则 S(a* b )= S(a) * S(b)因子个数 也是积性函数 f(x) 故有 S(2004) = S(2^2) * S(3) * S (167)S(2004 ^n)  mod 29= S (2 ^ 2*n)mod 29  * S (3 ^n)   mod 29 * S(167 ^n)  mo

2014-03-13 12:58:05 350

原创 hdu 1299 整数分解

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1299Diophantus of AlexandriaTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2149    Accepted

2014-03-13 12:58:02 299

原创 九度oj 1551 二分 + 精度

当刀痕长度从0--2*R 区间时, 比例是递增函数, 故满足二分法的条件。即  r(h)  =r0 , 求h 题目来源:http://ac.jobdu.com/problem.php?pid=1551 题目1551:切蛋糕时间限制:1 秒内存限制:128 兆特殊判题:否提交:257解决:84题目描述:有如下图半价为R的圆形蛋糕,被切一刀后

2014-03-13 12:58:00 356

原创 八数码难题 hdu1043/ poj1077

一组数据 ,正向搜索。 poj 1077代码如下: A* + hash +堆 + 曼哈顿距离  做一组数据的poj1077,可是,但是对于hdu 1043多组数据,没有剪枝,故超时,下面再给剪枝改进的算法。 1 #include 2 #include 3 #include 4 #include 5 #includestring.h> 6 #include

2014-03-13 12:57:58 555

原创 hdu 1073 字符串函数的应用

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1073Online JudgeTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4684    Accepted Submission

2014-03-13 12:57:56 410

原创 hdu 1048 字符串

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1048The Hardest Problem EverTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14441    Accepted

2014-03-13 12:57:54 355

原创 hdu 1039 连续字符串处理

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1039Easier Done Than Said?Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6855    Accepted Su

2014-03-13 12:57:52 294

原创 hdu 1020 简单的字符串处理

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1020EncodingTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 23937    Accepted Submission(s):

2014-03-13 12:57:50 308

原创 hdu 1027 排列生成器

排列生成器,next_permutation(num, num+n)  num表示指针,指向数组开始的位置,num+n, 指向数组结束的下一位 [first, last ) , 左闭右开。意义:按字典序的下一个排列。头文件:#include ,  Ignatius and the Princess IITime Limit: 2000/1000 MS (Java/Others)

2014-03-13 12:57:48 390

原创 hdu 1272 并查集

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=1272小希的迷宫Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 22383    Accepted Submission(s): 684

2014-03-13 12:57:45 295

原创 hdu 3635 并查集

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=3635Dragon BallsTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2273    Accepted Submission(s

2014-03-13 12:57:43 278

原创 poj 1182 并查集

1 #include 2 #include 3 #includestring> 4 #includestring.h> 5 #include 6 #include 7 #define N 50005 8 using namespace std; 9 // rank[x] 表示 parent[x]与x 的关系, rank[x]=0 同类, rank[x]=1 根吃x,

2014-03-13 12:57:41 327

原创 hdu 1856 并查集 求最大的子树含有元素的个数

这道题数据有点大, 我再次 被 cin>> he  cin完全是 并查集 ,模板 ,只是初始化 有点异样, 最后统计 子树元素的个数 。 #include#include#includestring>#includestring.h>#include#include#define N 10000005#define M 100005using nam

2014-03-13 12:57:39 284

原创 hdu 1232 / 1213 并查集(求子集个数)

并查集 模板: 用到了两个优化 ,一个是按秩(rank)合并,一个是路径压缩。 1 int rank[N]; 2 int parent[N]; 3 int n; 4 void init() 5 { 6 int i; 7 for( i=1;i) 8 { 9 parent[i]=i;10 ran

2014-03-13 12:57:37 490

原创 hdu 4501 动态规划 + 费用背包问题

题目 来源: http://acm.hdu.edu.cn/showproblem.php?pid=4501 小明系列故事——买年货Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 2126    Accepted Submissi

2014-03-13 12:57:35 281

原创 hdu 4503 找全是朋友或全不是朋友

湫湫系列故事——植树节Time Limit: 1000/500 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 935    Accepted Submission(s): 556Problem Description  今天是一年一度的植树节,腾讯幼儿园要求每个老师在班

2014-03-13 12:57:33 343

原创 hdu 数论专题

hdu 13592^x mod n = 1Problem DescriptionGive a number n, find the minimum x(x>0) that satisfies 2^x mod n = 1.  InputOne positive integer on each line, the value of n.  OutputIf

2014-03-13 12:57:31 554

原创 codeforce Round On Sum of Fractions

D. On Sum of Fractions Let's assume thatv(n) is the largest prime number, that does not exceed n;u(n) is the smallest prime number strictly greater than n.Find .InputThe

2014-03-13 12:57:29 231

原创 codeforce Round #232 Div2 map + 质因子 +组合

C. On Number of Decompositions into Multipliers You are given an integer m as a product of integers a1, a2, ... an . Your task is to find the number of distinct decompositions of number m 

2014-03-13 12:57:27 341

原创 九度OJ 1548 map的用法

题目来源: http://ac.jobdu.com/problem.php?pid=1548题目描述:给定平面上的n个点,任意做一条直线,求至多能有几个点恰好落在直线上。输入:包含多组测试数据,每组测试数据由一个整数n(0接下去n行每行给出一个点的坐标(x,y),x、y的绝对值均小于等于100。输出:对于每组测试数据,输出一个整数,表示至多能有几个点恰好落在直线

2014-03-13 12:57:24 273

原创 zoj 2110 dfs+步长

dfs搜索。搜索位置=D,而且步长=T, return, 可以逃出,输出“YES”。否则,不能逃出,输出“NO”。 1 #include 2 #include 3 #includestring> 4 #includestring.h> 5 #define N 9 6 using namespace std; 7 char map[N][N]; 8 int f

2014-03-13 12:57:22 231

原创 zoj 2412 dfs 求连通分量的个数

题目来源: http://acm.zju.edu.cn/onlinejudge/showRuns.do?contestId=1 求连通分量的个数:搜索时从第一个字符(对应一个正方形)开始,每搜索到一个正方形,对该位置的四个可能方向进行下一步搜索,下一步搜索需要满足的条件是 当前这个正方形有某个方向的搜索方向且下一个正方形也有这个方向的接受(连接)方向,故可进行一步搜索。例如 当前的可走

2014-03-13 12:57:20 252

原创 dfs hdu 1241 寻找连通分量的个数

题目大意:寻找连通分量的个数。完全dfs模板,注意是八个方向的搜索。代码如下:#include#include#includestring>#includestring.h>#define N 105using namespace std;char grid[N][N];int m,n;int direct[8][2]={{-1,-1},{-1,0},{

2014-03-13 12:57:18 333

原创 hdu kmp 2594

题目求P的前缀与S2的后缀相同的最长字符串,那么把P和S2连接起来,然后求next[n+m] 。注意两种数据:abcabcabcabcabc6abcabcabc3即需要讨论 next[n+m]>len(P) next=next[next[n + m]]  和   next[n+m]>len(S2) next=next[next[n + m]] 。代码如下:

2014-03-13 12:57:16 354

原创 hdu 1358 kmp 求前缀有几个循环

[1,2...,m] 模板的前缀Pi 的循环节为  clc = i-next[i]   i % clc == 0 && i != clc  则表示前缀中有 k = i / clc 个循环完全是参考代码模板:代码如下:#include#include#includestring>#includestring.h>#define N 1000005using n

2014-03-13 12:57:14 298

原创 hdu 3746 kmp求循环节 下标从1开始

长度为m[1,2...m]的模式的循环节为 m-next[m] ,aaa  循环节clc为1  (clc=m-next[m]= 3-2  =1)       此时   m%clc == 0   表示有3个完整的循环节ababa    循环节为2 (clc = 5-3=2)         此时   m%clc = 5%2 =1     表示有两个循环节 还余一个数  ,需添加的字符数 为

2014-03-13 12:57:12 299

原创 kmp hdu 3336 下标从1开始

kmp 模板 数组下标从1开始 P[1,2, . . .  m]   T[1,2  ,3   ...  n] void Prefix_Func() { int i,k; k=0; next[1]=0; for(i=2;i) { while(k>0 && P[k+1]!= P[i])

2014-03-13 12:57:10 300

原创 初识kmp hdu 1686

一,kmp 模板前缀函数 即next函数数组下标从0开始void Prefix_Func() { int i,k; k=-1; next[0]=-1; for(i=1;i) { while(k>=0 && P[k+1]!= P[i]) k=next[k];

2014-03-13 12:57:08 249

原创 hdu 1106 字符串处理

这题主要用到字符串的分割,和字符型转换成整型,这其实可以用两个函数来代替。atoi这个函数原来做进制转换的时候就接触过。如果第一个非空格字符不存在或者不是数字也不是正负号则返回零,否则开始做类型转换,之后检测到非数字(包括结束符 \0) 字符时停止转换,返回整型数。strtok函数,感觉这个比较新鲜。下面从百度百科摘点介绍:原型  char *strtok(char *s, con

2014-03-13 12:57:06 346

原创 hdu 1381 map(映射)

map和set 用到的是二叉搜索树的数据结构。二叉搜索树,是,所有的节点,都满足,左子树上的所以节点都比自己小,右子树上的所有节点都比自己大这一条件。一般有 查找,插入,删除等操作。 注意:map 是否需要清空 clear()但是,优先队列好像没有clear()函数? map映射类,保存两类东西,  键值 -- 映照数据常用函数1,构造函数 map()2,大小,判断

2014-03-13 12:57:04 231

原创 hdu 1509 1873()病人要看病 优先队列(符号重载)

优先队列,是堆的数据结构。子节点不大于父节点,根节点为最大值,故取出的是最大值。 优先队列,1权值越小优先级高,2权值相等,先输入的优先级高,即索引越小优先级越高。重载符号:struct node{ char str[100]; int par; int pri; int index; bool operatorconst

2014-03-13 12:57:01 272

原创 hdu 1022 (栈)STL容器的应用

进入和输出的数组为order1,和order2,。当栈为空或者栈顶元素!=order2[i],则入栈,且队列进“in”。否则,即栈不为空且栈顶元素与order[i]相等,则出栈,队列进“out”。不断进行上面2个判断,直至两个数组遍历完,或者在中途中达不到目标顺序,使程序停止。结果为“NO”的结束条件是,当栈为空或者栈顶元素!=order2[i]时,数组order1已经遍历了即j==n时,

2014-03-13 12:56:59 270

原创 hdu 1969 二分+精度

题目:将N个饼分成F+1份,问分的最大体积。 0-max(饼的体积),采用二分,寻找分成F+1份的最大体积,f(x)>=F+1  left=mid;(而不是mid+1(wrong answer)).精度的二分,采用的边界是开区间 (left,right),关于二分边界,请看 ----  http://blog.csdn.net/sunmenggmail/article/details/7540

2014-03-13 12:56:57 356

原创 hdu 2141 二分查找,三个数相加

计算A[i]+B[j]+C[k]=x转换为A[i]+B[i]=x-C[k] ,这样在A[i]+B[i]中二分查找,x-C[k] ,不会超时。 1 #include 2 #include 3 #includestring> 4 #includestring.h> 5 #include 6 7 using namespace std; 8 int a[505]

2014-03-13 12:56:55 368

原创 sort()排序

sort函数:头文件#include ,默认从小到大,如果降序可写第三方函数进行排序,EXP:sort(array,array+n,cmp)1普通排序,升序 1 #include 2 #include 3 using namespace std; 4 int main() 5 { 6 int a[10]={7,3,4,6,5,1,2,9,8,0};

2014-03-13 12:56:53 283

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除