- 博客(53)
- 资源 (2)
- 收藏
- 关注
原创 字符串匹配问题 kmp算法C语言实现
/**//*NO.1O(n^2)的算法:*//**//*枚举主串的每一个位置开始比较*/#include stdio.h>#define MAX 101int main(void)...{ char a[MAX],b[MAX]; int la=0,lb=0,i,j,k ; char c ; while ( (c =getchar())!= ) a
2007-10-21 11:49:00
5682
原创 洗牌问题(多种解法以高效解法)
/**//*洗牌问题 设2n张牌分别标记为1, 2, ..., n, n+1, ..., 2n,初始时这2n张牌按其标号从小到大排列。经一次洗牌后,原来的排列顺序变成n+1, 1, n+2, 2, ..., 2n, n。即前n张牌被放到偶数位置2, 4, ..., 2n,而后n张牌被放到奇数位置1, 3, ..., 2n-1。可以证明对于任何一个自然数n,经过若干次洗牌后可恢复初始状态。现在你
2007-10-21 09:27:00
3344
原创 (阶乘末尾0的个数的求法)求1~N中因子的数量的方法
/**//*计算:1~N 中指定因子 i 的数量的方法*/#include stdio.h>int main(void)...{int N,i,total =0 ;scanf("%d %d",&N,&i) ;for(; n ; )...{n /= i ;total += n ;}printf("%d ",total) ;return 0 ;}应用:PS:当i=5 时,就可以用来求:N!的末尾连
2007-10-20 20:17:00
2536
转载 阶乘算法全集,阶乘末尾非零位,阶末尾零的个数(转)
//阶乘各算法的 C++ 类实现#include iostream>#include cstring>#include iomanip> #include cmath> using namespace std; class Factorial { static const int MAXN = 5001; // 最大阶乘数,实际用不到这么
2007-10-20 18:50:00
7757
3
原创 中序表达式转换成后序表达式问题(栈的应用)
/**//*中序表达转换成后序表达式的方法:从左到右读取该中弱序表达式:1.若是操作数,则直接输出.2.若是运算符:(1)若该运算符为"(",则直接入栈.(2)若该运算符为")",则取出堆栈中的运算符,直到"("时.(3)其它: 按优先级比较,如果大于或等于堆栈中当前的运算则压入栈中,否则直接输出.(4)检查栈是否非空,如果非空,则输出所有值,直到空为止.*/#include stdio.h>
2007-10-20 18:19:00
3939
原创 Lucy的难题(超有规律的题目)
[ Source : NKPC ] 1002: [NKPC1]Lucy的难题 Time Limit: 1500 ms Memory Limit: 10000 kB Total Submit : 1807 (301 users) Accepted Submit : 288 (173 users) Page View : 5112 Font Style: Aa A
2007-10-20 15:45:00
2905
2
原创 最大数字子串和问题(NaiKai OJ P1760)
1760: 最大数字子串Time Limit: 1500 ms Memory Limit: 10000 kB Judge type: Multi-casesTotal Submit : 177 (35 users) Accepted Submit : 53 (31 users) Page View : 651 Font Style: Aa Aa Aa fun
2007-10-20 13:08:00
2999
原创 最大乘积问题(NOIP原题)
/**//*乘积最大问题:(和最大k乘积问题差不多,都是用DP,不过有些细节要注意一下,比如:位数小于乘号,则为0) 描述 Description 今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出
2007-10-20 12:16:00
3473
原创 约瑟环问题(O(n)简单算法)多种算法
/**//*Description将m个孩子从1到m编上号,按序号围坐成一个圈,从1号孩子开始数,每数到n时,被数到的孩子即离开圈子,然后从下一个孩子开始,再从1开始数,如此不断地数下去,只到只剩下最后一个孩子,问剩下的孩子是几号?Input输入为一组整数对,每个整数对占一行,整数对的第一个整数表示m,即孩子的个数,第二个整数表示n,即被数到n的孩子将离开。0<m<10000, n>0输入以0
2007-10-20 08:36:00
5982
原创 最大子段和的动态规法
/*最大子段和问题:对于一个序列: -6,9,8,-10,100,-99其中:最大子段和为:100 子段长度为:10*/#include stdio.h>#include stdlib.h>#define MAX 101 int main(void){ int i,j,k,n,max=0,sum=0; int sj=0 , sk = 0,st=0 ; int a[MAX
2007-10-19 15:58:00
1965
原创 连续自然数之和问题(多种解法)
/**//*对一个给定的自然数M,求出所有的连续的自然数段(连续个数大于1),这些连续的自然数段中的全部数之和为M。例子:1998+1999+2000+2001+2002 = 10000,所以从1998到2002的一个自然数段为M=10000的一个解。 输入格式 Input Format 包含一个整数的单独一行给出M的值(10 输出格式 Output Fo
2007-10-19 15:10:00
4550
原创 奇怪的电梯(基本的搜索)
/*奇怪的电梯(normal)Time Limit:1000MS Memory Limit:65536KTotal Submit:200 Accepted:63 Description 呵呵,有一天我做了一个梦,梦见了一种很奇怪的电梯。大楼的每一层楼都可以停电梯,而且第i层楼(1Input 输入文件共有二行,第一行为三个用空格隔开的正整数,表示N,A,B(1≤N≤200, 1≤A,B≤N),
2007-10-19 13:43:00
2656
原创 N皇后问题(基本的搜索法)
/**//*N后问题*/#include stdio.h>#include math.h>#define MAX 101int total = 0;char m[MAX][MAX]; int is_ok(int s,int i,int *a)...{ int j ; for(j=1 ; j s ; j++) if( (abs(i-a[j]) == abs(s-j)) || (
2007-10-19 07:45:00
1825
原创 拱猪计分问题(细心题)
【模拟试题】:拱猪计分(normal)Time Limit:1000MS Memory Limit:65536KTotal Submit:39 Accepted:13 Description 拱猪是一种很有趣的扑克牌游戏。 即使你不知道它的玩法,你也可以由它的计分方式来了解它的趣味性。 假设在此我们仅考虑四个人的拱猪牌局,本题要求你根据下面的计分规则,在牌局结束时计算四位
2007-10-19 07:42:00
2771
原创 打保龄球问题
/*【模拟试题】:打保龄球(normal)Time Limit:1000MS Memory Limit:65536KTotal Submit:58 Accepted:9 Description 打保龄球是用一个滚球去打击十个站立的柱,将柱击倒。一局分十轮,每轮可滚球一次或多次,以击倒的柱数为依据计分。一局得分为十轮得分之和,而每轮的得分不仅与本轮滚球情况有关,还可能与后续一两轮的滚球情况有关
2007-10-18 15:33:00
2414
原创 进制转换问题
/*【基础】:进制转换问题(easy)Time Limit:1000MS Memory Limit:65536KTotal Submit:271 Accepted:153 Description 若将一个正整数n化为二进制,在此二进制数中,我们将数字1的个数多于数字0的个数的这类二进制数称为A类数,否则就称其为B类数。 例如:(13)10=(1101)2,其中1的个数为3,0的个数为1,则
2007-10-18 13:38:00
2352
原创 方阵填数问题(模拟法)
/*【基础】:方阵填数(easy)Time Limit:1000MS Memory Limit:65536KTotal Submit:226 Accepted:109 Description 在一个N*N的方阵中,填入1、2、…、N*N个数,并要求构成如下的格式 例: N=5 13 14 15 16 1 12 23 24 17 2 11 22 25 18 3 10 21 20 19 4 9
2007-10-18 13:29:00
2853
原创 质数和分解问题
/*质数和分解(normal)Time Limit:1000MS Memory Limit:65536KTotal Submit:178 Accepted:66 Description 任何大于 1 的自然数 n,都可以写成若干个大于等于 2 ,且小于等于 n 的质数之和表达式(包括只有一个数构成的和表达式的情况),并且可能有不止一种质数和的形式。例如9 的质数和表达式就有四种本质不同的形式
2007-10-17 21:23:00
2748
原创 猴子分桃问题
/*【基础】:猴子分桃(normal)Time Limit:4000MS Memory Limit:65536KTotal Submit:258 Accepted:81 Description 有一堆桃子和N只猴子,第一只猴子将桃子平均分成了M堆后,还剩了1个,它吃了剩下的一个,并拿走一堆。后面的猴子也和第1只进行了同样的做法,请问N只猴子进行了同样做法后这一堆桃子至少还剩了多少个桃子(假设
2007-10-17 20:38:00
2936
原创 装箱问题(NOIP竞赛原题)(动态规划)
/*【2001年普及组4】装箱问题Time Limit:1000MS Memory Limit:65536KTotal Submit:512 Accepted:251 Description 有一个箱子容量为v(正整数,o≤v≤20000),同时有n个物品(o≤n≤30),每个物品有一个体积 (正整数)。要求从m个物品中,任取若千个装入箱内,使箱子的剩余空间为最小。 [样例] 输入: 24
2007-10-17 19:47:00
5375
原创 求先序序列(NOIP竞赛原题)
/*【2001年普及组2】求先序排列Time Limit:1000MS Memory Limit:65536KTotal Submit:208 Accepted:99 Description 给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度≤8)。Input 一棵二叉树的中序与后序排列Output 先序排列Sample Input BADC BDCAS
2007-10-17 19:19:00
1516
原创 最小公倍数与最大公约数问题(NOIP竞赛原题)
/* 最小公倍数与最大公约数问题: 描述 Description 输入二个正整数x0,y0(2≤x0≤100000,2≤y0≤1000000),求出满足下列条件的P、Q的个数。 条件:1.P、Q是正整数 2.要求P、Q以xO为最大公约数,以yO为最小公倍数。 试求,满足条件的所有可能的两个正整数的个数。
2007-10-17 16:58:00
1088
原创 求质因子个数的方法
/*求质因子的个数 */ #include stdio.h> int main(void) { long x0,y0 ; long k,total=0; int i,j,num=0 ; scanf("%d",&k);
2007-10-17 16:20:00
2140
原创 方形问题(数方形)
/*【基础】:方形问题(easy)Time Limit:1000MS Memory Limit:65536KTotal Submit:388 Accepted:180 Description 设有一个N*M方格的棋盘( l<= N<= 100,1<= M<= 100)。 求出该棋盘中包含有多少个正方形、多少个长方形(不包括正方形)。 例如:当 N=2, M=3时: 正方形的个数有8个:即边长
2007-10-17 10:32:00
1450
原创 排队打水问题
/*【杂题】:排队打水问题(normal)http://mail.bashu.cn:8080/JudgeOnline/showproblem?problem_id=1002Time Limit:1000MS Memory Limit:65536KTotal Submit:495 Accepted:170 Description 有n个人排队到r个水龙头去打水,他们装满水桶的时间t1、t
2007-10-16 16:23:00
4315
原创 合唱队形(NOIP原题)
/*【2005年提高组3】合唱队形http://mail.bashu.cn:8080/JudgeOnline/showproblem?problem_id=1001Time Limit:1000MS Memory Limit:65536KTotal Submit:447 Accepted:205 Case Time Limit:500MS Description N位同学站成一排,音乐老师要
2007-10-16 16:22:00
2396
原创 采药问题(NOIP竞赛原题)
/**//*采药 全国青少年信息学奥林匹克分区联赛 (NOIp) 竞赛原题 描述 Description 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些
2007-10-16 09:59:00
2080
原创 整数划分问题(C语言求解)
/**//*描述 Description 将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序)。例如:n=7,k=3,下面三种分法被认为是相同的。1,1,5; 1,5,1; 5,1,1;问有多少种不同的分法。 输入格式 Input Format 输入n,k (6 输出格式 Output Format 一个整数,即不同的分法。
2007-10-16 09:09:00
3619
原创 字符串技巧排序
排序Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 2200 Accepted Submission(s): 537Problem Description输入一行数字,如果我们把这行数字中的‘5’都看成空格,那么就得到一行
2007-10-15 20:59:00
659
原创 整数分解之和最大问题(全分成3,少分成2)
/* 整数分解(版本2)一个正整数可以分解成若干个自然数之和。请你编一个程序,对于给出的一个正整数n(1例如n=10,则可以分解为2+2+3+3,乘积m=2*2*3*3=36 输入格式 Input Format 一个正整数n 输出格式 Output Format 输出分解的自然数的最大乘积m */ #include stdio.h>#defi
2007-10-15 20:48:00
1105
原创 高精度乘法(用数组模拟笔算)
/* 高精度乘法输入:两行,每行表示一个非负整数(不超过10000位)输出:两数的乘积。 */#include stdio.h>#include string.h>#include stdlib.h>#include memory.h>#define MAX 10001int bigchenfa(int *sum,int *a,int *b,int lsum,int la,int lb){
2007-10-15 20:45:00
898
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人