03 2016 档案
《算法竞赛入门经典》5.41数学基础-Cantor的数表
摘要:如下数列,第一项是1/1,第二项是1/2,第三项是2/1,第四项是3/1,第五项是2/2,……。输入n,输出第n项。1/1 1/2 1/3 1/4 1/52/1 2/2 2/3 2/43/1 3/2 3/34/1 4/25/1样例输入:314712345样例输出:2/12/41/459/99方法一:
阅读全文
《算法竞赛入门经典》5.32排序与检索-字母重排
摘要:输入一个字典(用******结尾),然后再输入若干单词。每输入一个单词w,你都需要在字典中找出所有可以用w的字母重排后得到的单词,并按照字典序从小到大的顺序在一行中输出(如果不存在,输出:()。输入单词之间用空格或空行隔开,且所有输入单词都由不超过6个小写字母组成。注意,字典中的单词不一定按字典序排
阅读全文
《算法竞赛入门经典》5.31排序与检索-6174问题
摘要:假设你有一个各位数字互不相同的四位数,把所有数字从大到小排序后得到a,从小到大排序后得到b,然后用a-b替换原来这个数,并且继续操作。假如,从1234出发,依次可以得到4321-1234=3087、8730-378=8352、8532-2358=6174。有趣的是,7641-1467=6174,回到
阅读全文
数列F[19] + F[13]的值
摘要:已知数列如下:F[1]=1, F[2]=1, F[3]=5,......,F[n] =F[n-1] + 2*F[n-2],求F[19] + F[13]?
阅读全文
长理ACM 14-星期几(谌海军)
摘要:题目描述:编一个程序,已知今天是星期几,计算出n天后是星期几。要求使用枚举变量。输入描述:输入为两个正整数,第一个数n(n<=6)表示今天是星期几,第二个数m(m<=1000),表示求m天后是星期几;输出描述:输出为一个长度为3的字符串,表示星期几的名称;样式输入:1 4//样式输出:Fri提示:
阅读全文
长理ACM 13-围圈报数(谌海军)
摘要:题目标题:围圈报数(谌海军)题目描述:有n(n<=100)围成一圈,顺序排号(从1排到n)。从第一个人开始报数(从1报到m(m<=9)),凡报到m的人退出圈子,问最后留下的是原来第几号的那位?输入描述:输入为两个正整数,第一个<=100,第二个<=9;输出描述:输出为一个正整数;样式输入:100 3
阅读全文
《算法竞赛入门经典》5.22阶乘的精确值
摘要:1 /* 2 *输入不超过1000的正整数n,输出n!=1*2*3*……*n的精确结果。 3 *样例输入:30 4 *样例输出:265252859812191058636308480000000 5 */ 6 #include <stdio.h> 7 #include <string.h> 8 #d
阅读全文
《算法竞赛入门经典》5.21小学生算术
摘要:1 /* 2 *很多学生在学习加法时,发现“进位”特别容易出错。你的任务是计算两个整数在相加时需要多少次进位。你编制的程序应当可以连续处理多组数据, 3 直到读到两个0(这是输入结束标记)。假设读入的整数都不超过9个数字。 4 *样例输入: 5 123 456 6 555 555 7 123 594
阅读全文
《算法竞赛入门经典》5.13周期串
摘要:如果一个字符串可以由某个长度为k的字符串重复多次得到,我们说该串以k为周期。例如,abcabcabcabc以3为周期(注意,它也以6和12为周期)。输入一个长度不超过80的串,输出它的最小周期。
阅读全文
《算法竞赛入门经典》5.12TeX括号
摘要:1 /* 2 *在TeX中,左双引号是``,右双引号是''。输入一篇包含双引号的文章,你的任务是把它转换成TeX的格式。 3 *样例输入:"To be or not to be,"quoth the Bard,"that 4 *is the question". 5 *样例输出:``To be or
阅读全文
长理ACM 7-密码破译(闫博钊)
摘要:/* //题目标题: *密码破译(闫博钊) //题目描述: *某组织欲破获一个外星人的密码,密码由一定长度的字串组成。此组织拥有一些破译此密码的长度不同的钥匙,若两个钥匙的长度之和恰好为此密码的长度, *则此密码被成功破译。现在就请你编程找出能破译此密码的两个钥匙。 //输入描述: *输入第一行为钥
阅读全文
《算法竞赛入门经典》4.3.2递归函数-递归法计算阶乘
摘要:1 //程序4-6 2 //分析:数学函数也可递归定义,阶乘f(n)=n!定义为f(0)=1;f(n)=f(n-1)*n (n>=1)。 3 #include <stdio.h> 4 int f(int n) 5 { 6 return n==0 ? 1 : f(n-1)*n; 7 } 8 9 int
阅读全文
《算法竞赛入门经典》4.23用指针实现变量交换
摘要:1 //程序4-5 2 #include <stdio.h> 3 void swap(int* a, int* b) 4 { 5 int t = *a; *a = *b; *b = t; //*a是指“a指向的变量”,而不仅是“a指向的变量所拥有的值” 6 } 7 8 int main() 9 {
阅读全文
《算法竞赛入门经典》4.13应用举例-孪生素数
摘要:1 //例题4-2 2 /* 3 *如果n和n+2都是素数,则称它们是孪生素数。输入m,输出两个数均不超过m的最大孪生素数。5<=m<=100。例如m=2时答案是17、19,m=1000时答案是881、883。 4 */ 5 6 //程序4-2 孪生素数(1) 7 #include <stdio.h
阅读全文
《算法竞赛入门经典》4.13应用举例-组合数
摘要:1 //例题4-1 2 /* 3 *输入非负整数m和n,输出组合数,其中m≤n≤20。 4 */ 5 #include <stdio.h> 6 7 int f(int n) //因多次出现n!,将其作为一个函数来编写 8 { 9 int i, m = 1; 10 for(i = 1; i <= n;
阅读全文
《算法竞赛入门经典》3.3最长回文子串
摘要:1 //例题3-4 2 /* 3 * 输入一个字符串,求出其中最长的回文子串。子串的含义是:在原串中连续出现的字符串片段。 4 *回文的含义是:正看着和倒看着相同,如abba和yyxyy。在判断时,应该忽略所有标点符号和空格 5 *且忽略大小写,但输出应保持原样(在回文串的首部和尾部不要输出多余字符
阅读全文
浙公网安备 33010602011771号