理工oj题目
更新时间:2023-10-04 07:57:01 阅读量: 综合文库 文档下载
零起点学算法80——逆序输出(数组练习)
Time Limit:1000MS Memory Limit:65536K Total Submit:2994 Accepted:1369
Description
数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组 数组类型说明 在C语言中使用数组必须先进行类型说明。 数组说明的一般形式为: 类型说明符 数组名 [常量表达式],……; 其中,类型说明符是任一种基本数据类型或构造数据类型。 数组名是用户定义的数组标识符。 方括号中的常量表达式表示数据元素的个数,也称为数组的长度。 例
int a[10]; 说明整型数组a,有10个元素。 float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。 char ch[20]; 说明字符数组ch,有20个元素。
Input
多组测试数据。第一行输入一个整数T表示测试数据组数 每组首先输入1个整数n,然后输入n个整数(不大于20)
Output
对于每组测试数据按照输入相反的顺序输出n个数据
Sample Input 2 3 1 2 3 5
2 3 1 4 5
Sample Output 3 2 1 5 4 1 3 2
Source
零起点学算法81——找出数组中最大元素的位置(下标值)
Time Limit:1000MS Memory Limit:65536K Total Submit:4376 Accepted:1535
Description
找出数组中最大的元素的下标。
Input
多组测试,每组先输入一个不大于10的整数n 然后是n个整数
Output
输出这n个整数中最大的元素及下标值
Sample Input 4
1 4 5 6
Sample Output 6 3
Source
零起点学算法82——数组中查找数
Time Limit:1000MS Memory Limit:65536K
Total Submit:3001 Accepted:1393
Description
在给定的数组中查找一个数
Input
多组测试,每组第一行输入1个整数n(n<20),然后是n个整数 第二行输入1个整数m
Output
查找在第一行的n个整数中第一次出现数字m的下标位置并输出,如果没有找到则输出No
Sample Input
3 4 5 6 5
4 2 2 2 2 2
Sample Output
1 0
Source
零起点学算法83——数组中删数
Time Limit:1000MS Memory Limit:65536K
Total Submit:2938 Accepted:961
Description
在给定的数组中删除一个数
Input
多组测试,每组第一行输入1个整数n(n<20),然后是n个整数 第二行输入1个整数m
Output
删除在第一行的n个整数中第一次出现数字m并删除,然后按照顺序输出剩下的数,
Sample Input
4 1 2 3 4 3
Sample Output
1 2 4
Hint
m有可能在原数组中找不到,找不到则输出原数组
Source
零起点学算法84——数组中删数II
Time Limit:1000MS Memory Limit:65536K
Total Submit:1411 Accepted:754
Description
在给定的数组中删除数
Input
多组测试,每组第一行输入1个整数n(n<20),然后是n个整数 第二行输入1个整数m
Output
删除在第一行的n个整数中的数字m(多个的话都要删除),然后按照顺序输出剩下的数,
Sample Input
5 1 2 3 4 3 3
Sample Output
1 2 4
Source
零起点学算法85——数组中插入一个数
Time Limit:1000MS Memory Limit:65536K
Total Submit:1566 Accepted:546
Description
给定有序数组(从小到大),再给你一个数,要求插入该数到数组中并保持顺序
Input
多组测试,每组第一行输入一个整数n,然后是n个有序的整数 第二行输入1个整数m和1个整数K
Output
将整数m插入到原数组中保持顺序是升序,然后输出2行 第一行是插入以后的数组
第二行是插入以后的数组中下标值是K的数
n m k不超过20
Sample Input
3 1 2 5 3 1
Sample Output
1 2 3 5 2
Source
零起点学算法87——打印所有低于平均分的分数
Time Limit:1000MS Memory Limit:65536K
Total Submit:4940 Accepted:1717
Description
输入n个成绩,打印出所有低于平均分的分数(注意:ave = s/n中s 为float或ave = (float)s/n)。
Input
多个测试数据
每个测试数据一行,在这行中先输入分数的个数n(1<=n<=100),然后紧跟着输入
n个整数(代表分数)
Output
对于每个测试数据,输出一行按照输入顺序输出所有低于(<)平均分的分数,中间用一个空格隔开,如果没有低于平均分的那么只输出一个空行
Sample Input
3 40 50 60 2 90 80
5 10 10 90 80
Sample Output
40 80 10 10
零起点学算法88——青年歌手大奖赛_评委会打分
Time Limit:1000MS Memory Limit:65536K
Total Submit:2756 Accepted:1546
Description
青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。
Input
输入数据有多组,每组占一行,每行的第一个数是n(2 < n <= 100),表示评委的人数,然后是n个评委的打分。
Output
对于每组输入数据,输出选手的得分,结果保留2位小数,每组输出占一行。
Sample Input
3 99 98 97 4 100 99 98 97
Sample Output
98.00 98.50
Source
hdu2014
零起点学算法89——程序设计竞赛
Time Limit:1000MS Memory Limit:65536K
Total Submit:2816 Accepted:1816
Description
每年5月份,省里都要举行程序设计竞赛。
为了让最优秀的学生去参加比赛,我们一般需要做一个选拔工作。 现在你来帮老师完成这个任务哦。
Input
多组测试数据,每组数据一行,该行先输入一个整数n ( n <= 30),表示参加选拔的同学人数。然后是n个整数表示选拔成绩。
Output
对于每组测试数据,请在一行从高到低输出他们的成绩。
Sample Input
4 2 6 7 1 3 4 10 9
Sample Output
7 6 2 1 10 9 4
Source
yhr
零起点学算法90——开灯问题
Time Limit:1000MS Memory Limit:65536K
Total Submit:806 Accepted:415
Description
计算中心有8个机房,每个机房有n台电脑。每台电脑都有一个编号,比如8号机房编号就为H1到Hn,我们有时又称为H1为1号机器,H2为2号机器,...。
有一天我们学校跻身世界高校100强,全校所有师生都进行了狂欢庆祝。罗老师是个很爽快的人,也很喜欢喝酒,那天他喝多了点。但不巧的是那天晚上正好罗老师值班,罗老师是个很负责的老师。所以他就把8号机房打开了。但同学们都还在狂欢,没一个人来上机。罗老师提着一瓶酒,感觉到很无聊,所以他想玩个游戏。 第一回合,他喝了一口酒,他把所有的电脑都打开。然后第二回合他喝了一口酒,他把编号是2,4,6,...的电脑全关了。第三回合,他喝一口酒后就去操作所有编
号是3,6,9,...,看到电脑开着就把它关掉,看到电脑关了就把它打开。他重复这样操作共进行了n个回合。当他操作完最后一个回合后,罗老师醉倒了。 现在给你这个机房电脑的数目,问你最后共有几台电脑开着?
Input
输入只有1行,这行有一个正整数,表示这个机房共有多少个电脑,该数是5到100之间的任意正整数。
Output
你必须输出最后开着的电脑数。输出该数后不要忘了换行。
Sample Input
5
Sample Output
2
Hint
for(i=1;i<=n;i++)//i表示回合1--n
for(k=1;k<=n;k++)//k表示电脑编号1--n
Source
yhr
零起点学算法91——找出一个数组中出现次数最多的
那个元素
Time Limit:1000MS Memory Limit:65536K
Total Submit:842 Accepted:278
Description
找出一个数组中出现次数最多的那个元素
Input
第一行输入一个整数n(不大于20) 第二行输入n个整数,
Output
找出n个整数中出现次数最多的那个整数
Sample Input
4
1 2 2 3
Sample Output
2
Source
零起点学算法92——元素前移1位
Time Limit:1000MS Memory Limit:65536K
Total Submit:925 Accepted:591
Description
将数组所有元素前移一位(最前面的元素移到最后)然后输出移动后的数组
Input
多组测试数据,每组
第一行输入一个整数n(不大于20) 第二行输入n个整数
Output
输出前移一位后的数组
Sample Input
4
1 2 3 4
Sample Output
2 3 4 1
Source
零起点学算法93——矩阵转置
Time Limit:1000MS Memory Limit:65536K
Total Submit:3968 Accepted:1956
Description
现要求你把一个矩阵行列转置后输出,注意行数和列数可能不相同的。
Input
多组测试数据,每组测试数据先在一行输入n 和m ,表示这个矩阵的行数和列数(1 < n,m <= 10)
然后是n行m列的一个矩阵
Output
对于每组测试数据输出转置后的矩阵
Sample Input
3 2 1 2 3 4 5 6
Sample Output
1 3 5 2 4 6
Source
yhr
零起点学算法94——输出矩阵
Time Limit:1000MS Memory Limit:65536K
Total Submit:1054 Accepted:659
Description
输出n*m的矩阵
Input
多组测试数据
每组输入2个整数 n和m(不大于20)
Output
输出n*m的矩阵,要求左上角元素是1,然后从左到右 从上到下依次增大
Sample Input
3 4
Sample Output
1 2 3 4 5 6 7 8 9 10 11 12
Source
零起点学算法95——弓型矩阵
Time Limit:1000MS Memory Limit:65536K
Total Submit:987 Accepted:456
Description
输出n*m的弓型矩阵
Input
多组测试数据
每组输入2个整数 n和m(不大于20)
Output
输出n*m的弓型矩阵,要求左上角元素是1,(每个元素占2个位置,靠右)
Sample Input
4 3
Sample Output
1 2 3 6 5 4 7 8 9 12 11 10
Source
零起点学算法96——回型矩阵
Time Limit:1000MS Memory Limit:65536K
Total Submit:336 Accepted:166
Description
输出n*m的回型矩阵
Input
多组测试数据
每组输入2个整数 n和m(不大于20)
Output
输出n*m的回型矩阵,要求左上角元素是1,(每个元素占2个位置,靠右)
Sample Input
4 3
Sample Output
1 2 3 10 11 4 9 12 5 8 7 6
Source
零起点学算法97——进制转换
Time Limit:1000MS Memory Limit:65536K
Total Submit:1023 Accepted:677
Description
输入一个十进制数N,将它转换成R进制数输出。
Input
输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R(2<=R<=16, R<>10)。
Output
为每个测试实例输出转换后的数,每个输出占一行。如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。
Sample Input
7 2 23 12 -4 3
Sample Output
111 1B -11
Source
hdu2031
零起点学算法98——反话连篇
Time Limit:1000MS Memory Limit:65536K
Total Submit:831 Accepted:400
Description
把输入的字符按照反着顺序输出
Input
多组测试数据 每组一行
Output
按照输入的顺序反着输出各个字符
Sample Input
I am a boy.
Sample Output
.yob a ma I
Source
零起点学算法101——统计字母数字等个数
Time Limit:1000MS Memory Limit:65536K
Total Submit:4526 Accepted:1861
Description
输入一串字符,统计这串字符里的字母个数,数字个数,空格字数以及其他字符(最多不超过100个字符)
Input
多组测试数据,每行一组
Output
每组输出一行,分别是字母个数,数字个数,空格字数以及其他字符个数
Sample Input
I am a student in class 1. I think I can!
Sample Output
18 1 6 1 10 0 3 1
Hint
char str[100];//定义字符型数组
while(gets(str)!=NULL)//多组数据 {
//输入代码
for(i=0;str[i]!='\\0';i++)//gets函数自动在str后面添加'\\0'作为结束标志 {
//输入代码 }
//字符常量的表示, 'a'表示字符a; '0'表示字符0;
//字符的赋值
str[i]='a';//表示将字符a赋值给str[i] str[i]='0';//表示将字符0赋值给str[i] }
Source
零起点学算法102——删除字符
Time Limit:1000MS Memory Limit:65536K
Total Submit:3033 Accepted:1335
Description
从键盘输入任意一个字符串和一个字符,要求从该字符串中删除所有该字符。
Input
输入有多组测试数据。
每组两行,第一行是字符串(字符串至少还有一个字符,不多于100个),第二行是一个字符
Output
每组输出一行,删除了所有应删除字符后的字符串
Sample Input
ABCDE E
ASD Dfg fhd D
Sample Output
ABCD AS fg fhd
Hint
char str[100],a;
while(gets(str)!=NULL)//多组测试数据 {
scanf(\
getchar();//注意加这一行,它的作用是将上一行输入的回车符号'\\n'符号读入
for(i=0;str[i]!='\\0';i++) {
//写代码;找到a,用循环语句将数组左移1位置 }
//写代码;输出删除a后的数组 }
return 0; }
Source
yhr
零起点学算法103——查找最大元素
Time Limit:1000MS Memory Limit:65536K
Total Submit:1201 Accepted:655
Description
对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串“(max)”。
Input
输入数据包括多个测试实例,每个实例由一行长度不超过100的字符串组成,字
符串仅由大小写字母构成。
Output
对于每个测试实例输出一行字符串,输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入\。
Sample Input
abcdefgfedcba xxxxx
Sample Output
abcdefg(max)fedcba
x(max)x(max)x(max)x(max)x(max)
Source
hdu2025
零起点学算法105——C语言合法标识符
Time Limit:1000MS Memory Limit:65536K
Total Submit:1496 Accepted:602
Description
输入一个字符串,判断其是否是C的合法标识符。
Input
输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。
Output
对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出\,否则,输出“no”。
Sample Input
3 12ajf fi8x_a ff ai_2
Sample Output
no
yes no
Hint
C语言的标识符指保留字(for,int,if等)和用户定义的变量名。
C语言的标识符由字母、数字和下划线组成,其中第一个字符必须是字母或者下划线。
Source
hdu2024
零起点学算法106——首字母变大写
Time Limit:1000MS Memory Limit:65536K
Total Submit:2559 Accepted:896
Description
输入一个英文句子,将每个单词的第一个字母改成大写字母。
Input
输入数据包含多个测试实例,每个测试实例是一个长度不超过100的英文句子,占一行。
Output
请输出按照要求改写后的英文句子。
Sample Input
i like acm
i want to get an accepted
Sample Output
I Like Acm
I Want To Get An Accepted
Source
hdu2026
零起点学算法107——统计元音
Time Limit:1000MS Memory Limit:65536K
Total Submit:1032 Accepted:479
Description
统计每个元音字母在字符串中出现的次数。
Input
输入数据首先包括一个整数n,表示测试实例的个数,然后是n行长度不超过100的字符串,只由小写字母组成。
Output
对于每个测试实例输出5行,格式如下: a:num1 e:num2 i:num3 o:num4 u:num5
多个测试实例之间由一个空行隔开。
请特别注意:最后一块输出后面没有空行:)
Sample Input
2 aeiou
my name is ignatius
Sample Output
a:1 e:1 i:1 o:1 u:1 a:2 e:1 i:3 o:0 u:1
Source
hdu2027
零起点学算法108——Palindromes _easy version
Time Limit:1000MS Memory Limit:65536K
Total Submit:1304 Accepted:542
Description
“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。请写一个程序判断读入的字符串是否是“回文”。
Input
输入包含多个测试实例,输入数据的第一行是一个正整数n,表示测试实例的个数,后面紧跟着是n个字符串。每个字符串长度不超过150。
Output
如果一个字符串是回文串,则输出\否则输出\
Sample Input
4 level abcde noon haha
Sample Output
yes no yes no
Source
hdu2029
零起点学算法109——单数变复数
Time Limit:1000MS Memory Limit:65536K
Total Submit:922 Accepted:505
Description
英文单词,我们可以按照英语语法规则把单数变成复数。规则如下: (1)以辅音字母y结尾,则加es (2)以s,x,ch,sh结尾,则加es (3)以元音o结尾,则加es (4)其他情况加上s
Input
第一行输入一个数字n,表示有n组测试数据 后面跟n行,每行是一个英语单词
Output
对于每组测试数据,输出一行,要求将输入的英文单词变成复数
Sample Input
2 book fish
Sample Output
books fishes
Source
yhr
零起点学算法110——绝对公正的裁判
Time Limit:1000MS Memory Limit:65536K
Total Submit:306 Accepted:185
Description
错误!
大家知道我们学校的OnlineJudge吗?,你知道他会告诉你什么呢?
Compiling : 您提交的代码正在被编译。Running : 您的程序正在OJ上运行。Judging : OJ正在检查您程序的输出是否正确。Accepted (AC) : 您的程序是正确的,恭喜!Presentation Error (PE) : 虽然您的程序貌似输出了正确的结果,但是这个结果的格式有点问题。请检查程序的输出是否多了或者少了空格(' ')、制表符('\\t')或者换行符('\\n')。Wrong Answer (WA) : 输出结果错,这个一般认为是算法有问题。Runtime Error (RE) : 运行时错误,这个一般是程序在运行期间执行了非法的操作造成的。以下列出常见的错误类型:
1、您的程序想从一些非法的地址空间读取或向其中写入内容。一般例如指针、数组下标越界都会造成这个错误的。
2、您的程序试图访问一个超出硬件支持范围的数组单元。
3、进行了一个非正常的浮点操作。一般是由于一个非正常的浮点数参与了浮点操作所引起的,比如这个数的浮点格式不正确。 4、浮点数除法出现除数为零的异常。
5、在进行整数除法的时候出现了除数为零的异常。
6、栈溢出。一般是由于无限递归或者在函数里使用了太大的数组变量的原因。 ...... 其他错误,包括C++标准库/STL运行时库错误等,这里不再举例。
Time Limit Exceeded (TLE) : 您的程序运行的时间已经超出了这个题目的时间限制。Memory Limit Exceeded (MLE) : 您的程序运行的内存已经超出了这个题目的内存限制。Output Limit Exceeded (OLE) : 您的程序输出内容太多,超过了这个题目的输出限制。Compilation Error (CE) : 您的程序语法有问题,编译器无法编译。具体的出错信息可以点击链接察看。 Out Of Contest Time : 超出比赛时间,这个信息只有在比赛的时候才会出现。
Sample Input
2
Sample Output
4
Source
零起点学算法33——求多项式(含浮点)
Time Limit:1000MS Memory Limit:65536K
Total Submit:1860 Accepted:877
Description
输入一个整数n,计算
1+1/(1-3)+1/(1-3+5)+...+1/(1-3+5-...+2n-1)的值
Input
输入一个整数n
Output
输出1+1/(1-3)+1/(1-3+5)+...+1/(1-3+5-...+2n-1)的值,保留2位小数
Sample Input
1
Sample Output
1.00
Source
零起点学算法34——3n+1问题
Time Limit:1000MS Memory Limit:65536K
Total Submit:1148 Accepted:908
Description
任给一个正整数n,如果n为偶数,就将它变为n/2,如果除后变为奇数,则将它乘3加1(即3n+1)。不断重复这样的运算,经过有限步后,一定可以得到1 。
Input
输入1个正整数n(n <= 10^9)
Output
输出变化的次数
Sample Input
3
Sample Output
7
Hint
使用 while 循环
使用 while 语句在条件成立时重复某动作,类似于 if 语句,只要条件为 true 就重复动作。
while 循环计算一个表达式的值,如果表达式为 true,则会执行循环体中的代码。如果条件计算结果为 true,在循环返回以再次计算条件前执行一条语句或一系列语句。条件计算结果为 false 后,则跳过语句或一系列语句并结束循环。在不确定要将一个代码块循环多少次时,使用 while 循环可能会非常有用。
例如,下面的代码将数字显示到\输出\面板中:
var i:Number = 0; while (i < 5) {
trace(i); i++; }
您会看到以下数字显示到\输出\面板中: 0 1 2 3 4
使用 while 循环而非 for 循环的一个缺点是,在 while 循环中更有可能编写出无限循环。如果遗漏递增计数器变量的表达式,则 for 循环示例代码将无法编译;而 while 循环示例代码将能够编译。若没有递增 i 的表达式,循环将成为无限循环。
Source
零起点学算法35——求阶乘
Time Limit:1000MS Memory Limit:65536K
Total Submit:2028 Accepted:1612
Description
输入一个正整数n(n<10),计算它的阶乘
Input
输入一个正整数n(n<10)
Output
输出n的阶乘
Sample Input
3
Sample Output
6
Source
零起点学算法36——求阶乘和
Time Limit:1000MS Memory Limit:65536K
Total Submit:1380 Accepted:919
Description
输入一个正整数n(n<10),计算 S=1!+2!+3!+...+n!
Input
输入一个正整数n(n<10),
Output
输出S
Sample Input
2
Sample Output
3
Source
零起点学算法37——多组测试数据(a+b)
Time Limit:1000MS Memory Limit:65536K
Total Submit:2734 Accepted:1891
Description
计算a+b.很多的题目测试数据会有很多组的,一般我们的在线系统没写具体要求的时候,输入是以EOF为结束的。这题的基本框架如下:
int main() {
int a,b;
while(scanf(\ //特别注意这行的写法 {
...//求和
...//输出 } }
scanf函数是有返回值的,如果从键盘上成功读入一个数,那么返回值就是1,如果成功读入2个,则返回2。如果处理到文件末尾,则返回EOF
特别注意:题目的要求实际上是指每组数据输入结束后,马上输出这组的结果,而不是等所有数据输完后才输出结果
Input
输入为多组测试数据。每组一行,每行输入2个整数a和b
Output
对于每组测试数据,输出一行,输出a+b的值,直到文件末尾
Sample Input
2 3 4 5 7 8
Sample Output
5 9 15
Hint
更多输入输出的练习可以做做1000 1271~1275题
Source
零起点学算法38——多组测试数据(a+b)II
Time Limit:1000MS Memory Limit:65536K
Total Submit:2429 Accepted:1727
Description
同样是计算a+b
同样是多组测试数据,但有的题目要求先输入一个整数n表示测试数据个数,然后是n组测试数据。对于这类题目大家可以采用下面的形式,不需要再用EOF:
int main() {
int n;
int i,a;
scanf(\输入测试数据组数
for(i=1;i<=n;i++)//循环n次
{
现在,要求如果输入一个缩写短语,要求输出原型,具体看样例。
Input
The first line is integer T(T <= 20), the number of test cash case 第一行为一个数T(T<=20),为测试数据的数目 接下来,有T行分别输入一个缩写(缩写只包括AC,PE,WA,RE,TLE,MLE,OLE,CE)
Output
对于每组测试数据输出一行为着这缩写的原型
Sample Input
8 AC PE WA RE TLE MLE OLE CE
Sample Output
Accepted
Presentation Error Wrong Answer Runtime Error
Time Limit Exceeded Memory Limit Exceeded Output Limit Exceeded Compilation Error
Source
style_luo
零起点学算法111——英雄是否能救美?
Time Limit:1000MS Memory Limit:65536K
Total Submit:463 Accepted:224
Description
有一天火星上一个美女在一座高楼上晒衣服,不小心掉下来了,这是在地面上的英雄刚好看到,英雄很喜欢救美,他想知道是否自己来的跑到美女的正下方抱住她。
假设美女所在的楼层高度H m,火星的重力加速度为 G=11.1 m/(s^2),没有其它阻力(如空气阻力)做自由落体运动。美女开始落下时英雄离这楼水平距离为 D m,英雄的跑步速度为V(匀速运动)。
Input
第一行为一个数T(T<=20),为测试数据的数目。
接下来,有T行分别 有三个浮点数 H,D,V,意思如题所述。
Output
对于每组测试数据占一行,如果英雄能救美输出“YES”,否则输出“NO”。
Sample Input
2
1.0 1.0 1.0 10.0 1.0 10.0
Sample Output
NO YES
Source
零起点学算法112——牛牛
Time Limit:1000MS Memory Limit:65536K
Total Submit:633 Accepted:164
Description
牛牛是一种纸牌游戏,总共5张牌,规则如下:
如果找不到3张牌的点数之和是10的倍数,则为没牛;
如果其中3张牌的点数之和是10的倍数,则为有牛,剩下两张牌的点数和对10取余数,余数是几,就是牛几,特别的当余数是0的时候是牛牛; 例如: 1 2 3 4 5, 1 + 4 + 5 = 0 (mod 10),2 + 3 = 5(mod 10), 为牛5。
Input
第一行输入一个整数T(T <= 100),表示有几组数据。每组数据占一行,5 个数, 每个数的范围都是1到10。
Output
见样例。
Sample Input
3
1 1 1 1 1 1 2 3 4 5 1 9 10 10 10
Sample Output
Case #1: Mei Niu Case #2: Niu 5 Case #3: Niu Niu
Source
wy
零起点学算法113——统计单词个数
Time Limit:1000MS Memory Limit:65536K
Total Submit:536 Accepted:248
Description
输入一行字符(少于80个字符),以回车结束,统计其中单词的个数。各单词之间用空格分隔,空格数可以是多个。
Input
输入一字符串,以回车结束。
Output
输出该字符串中单词的个数
Sample Input
This is a c program.
Sample Output
5
Source
jc_p118_2
统计每个字母个数
Time Limit:1000MS Memory Limit:65536K
Total Submit:1534 Accepted:534
Description
输入一段英文(字数小于100),以回车结束,统计其中的每个字母出现次数,不区分大小字。
Input
多组测试数据,每组输入一段英文(字数小于100),以回车结束
Output
输出每个字母出现的次数(次数为零的不输出) 每组数据后面输出一个空行
Sample Input
Welcome to c world.
Sample Output
c: 2 d: 1 e: 2 l: 2 m: 1 o: 3 r: 1 t: 1 w: 2
Source
零起点学算法01——第一个程序Hello World!
Time Limit:1000MS Memory Limit:65536K
Total Submit:3018 Accepted:1744
Description
很开心开始学习算法了。
很多人觉得算法这个字很高深,其实算法很常见,并不是很高深,当然也有很高深的算法。
那么什么是算法呢?
说的通俗一点,算法就是解决一个问题或任务的方法和步骤。 比如说做这题题目有没有算法?当然有拉。
那做3800的算法是什么呢?下面就是其中一个算法: (1)打开网站http://acm.zstu.edu.cn
(2)注册一个账号或登录已经注册的账号 (3)找到3800这道题目 (4)阅读题目
(5)打开计算机中的C-free或其他C语言编程集成环境 (6)编写程序 (7)调试 (8)提交
原来这就是算法啊!会了?
好,那么以后就跟着老师把算法学好哦。现在假设你一点基础没有,跟着老师把这页的题目做完了,然后你就可以学习一些高深的算法。有兴趣的同学还可以参加ACM程序设计竞赛哦。竞赛这个词也不要害怕,并不是太高深的字眼,如果你认真学习,你完全有可能成为比浙大 90%的人要强的人。 你可以学会更好的思维, 你可以掌握计算机这个工具,
你可以解决很多你从来没碰到过的问题,
你可以在毕业后找到比别人高3倍 5倍 甚至10倍工资的好工作, ......
如果你对这个竞赛感兴趣,不需要任何基础,就可以直接联系叶老师(email:yehr@zstu.edu.cn).
不感兴趣也不要紧,学好这门课,你绝对不会吃亏。 那么我们开始来写第一个程序吧。
Input
这个程序没有输入。
Output
输出\不含引号),并换行。
Sample Input Sample Output
Hello World!
Hint
换行该怎么办?
\\n是换行的转义字符,输出时写上它就换行了
可能很多同学会在一些书上看到这题的代码:
void main() {
printf(\ }
这个代码你可以在很多的编程环境里能正常运行,但在我们这里行不通,我们这里的编译器采用的是标准C.
对于初学者,你必须注意以下几点:
1 函数的返回类型应该为int,不能用void,所以应写成int main()
2 使用了printf函数,你应该包含进stdio.h,所以在最开头应该写上#include
3 最好在main函数最后一个}前写上return 0;,该语句主要是预防某些编译器报错,写上该语句,几乎所有编译器都可以通过。
4 一定要养成良好的编程习惯,该缩进的缩进,该对齐的要对齐,适当的要加注释。
5 当然也不要忘了先让程序在本地能正常运行,只有调试成功后,才在线提交。
Source
零起点学算法02——输出简单的句子
Time Limit:1000MS Memory Limit:65536K
Total Submit:2655 Accepted:2065
Description
会输出Hello World!了,那换个句子也会吧?
Input
没有输入
Output
现在要求你输出下面红色的字 Nice to meet you!
Sample Input Sample Output
Nice to meet you!
Source
零起点学算法03——超简单模仿算术题
Time Limit:1000MS Memory Limit:65536K
Total Submit:2283 Accepted:2002
Description
计算机计算能力很强哦。
让计算机帮你算其实也很容易,不过要学好计算机语言哦。 下面请看一个例子:要求计算机计算1+2的值并输出。 这个程序非常简单,请看下面蓝色字体的就是程序代码:
#include
int main() {
printf(\
return 0;
}
Input
没有输入
Output
输出10-7的值
Sample Input Sample Output
3
Hint
非常简单吧!抄下来改一下就OK了。
Source
零起点学算法04——再模仿一个算术题
Time Limit:1000MS Memory Limit:65536K
Total Submit:2108 Accepted:1969
Description
上题会模仿了吧。再来模仿一个。 现在要求你模仿一个乘法的算术题
Input
没有输入
Output
输出9乘以10的值
Sample Input Sample Output
90
Hint
啊,不会?不会吧。哦 忘了告诉你了 在C语言中乘号用星号*表示.
这下简单了吧
Source
零起点学算法05——除法算术题
Time Limit:1000MS Memory Limit:65536K
Total Submit:2059 Accepted:1895
Description
乘法会了,除法也一样的。不要跟我说不会哦。
Input
没有输入
Output
输出12除以2的值,计算让计算机去做哦
Sample Input Sample Output
6
Hint
非常简单吧?啊,又不会啊!原来计算机的语言跟人类的语言果然有点区别。除号用的是这个红色的符号/
Source
零起点学算法06——再来一题除法算术题
Time Limit:1000MS Memory Limit:65536K
Total Submit:2626 Accepted:1920
Description
Input
没有输入
Output
输出8除以5,保留1位小数
Sample Input Sample Output
1.6
Hint
什么?你交上来不对?本地有没有调试过?没有?赶快在本地先试。
你输出的结果是1?哦,忘了告诉你了,在C语言里2个整数相除结果还是整数,8除以5是1.5,因为保留整数部分,所以结果是1拉 那应该怎么样得到1.5呢? 还记得那个%d吗?
这个就是控制输出的格式控制符 %d 输出整数
%f 输出带小数的数(浮点数)
保留一位小数,就用%.1f,保留2位小数呢?会不会? 哦,还要注意,要把8改成8.0
Source
零起点学算法07——复杂一点的表达式计算
Time Limit:1000MS Memory Limit:65536K
Total Submit:2829 Accepted:1906
Description
下面你来计算一个复杂一点的计算表达式
Input
没有输入
Output
输出表达式的值,保留2位小数
Sample Input Sample Output Hint
啊,开根号不会做啊?
哦,告诉你吧,调用数学函数就可以了 sqrt(3.0)就是根号3
,不过不要忘了在最前面要加上这个头文件哦 #include
Source
零起点学算法08——简单的输入和计算(a+b)
Time Limit:1000MS Memory Limit:65536K
Total Submit:2872 Accepted:1944
Description
前面7道题做下来,对输出和计算有点感觉了吧?
不过很可惜的是前面的做法,好像太死了,写了一个计算3+4的程序,计算5+6又得改程序,计算机真的只能这么实现,那么我们比计算机还累。 现在来点新的东西。
你能写一个可以计算任意2个输入数的和吗?
Input
输入2个整数,中间用空格隔开
Output
输出他们的和
Sample Input
2 5
Sample Output
7
Hint
啊,输出不会啊?看书呀。 算了,为了省时间,告诉你吧
输入一个整数,并把整数保存到变量a里 首先定义变量a int a;
然后从键盘输入,保存到变量a中 scanf(\&a);
输入2个整数,分别保存到a 和b 中会写吗? scanf(\&a,&b); 输入3个整数呢?
Source
零起点学算法09——继续练习简单的输入和计算
(a-b)
Time Limit:1000MS Memory Limit:65536K
Total Submit:2087 Accepted:1851
Description
简单吧,不用多说了
Input
输入2个整数a,b,用空格隔开
Output
输出a-b的值
Sample Input
6 4
Sample Output
2
Source
零起点学算法10——求圆柱体的表面积
Time Limit:1000MS Memory Limit:65536K
Total Submit:4899 Accepted:1671
Description
Input
输入底面半径r和高h
Output
输出圆柱体的表面积,保留3位小数
Sample Input
3.5 9
Sample Output
Area=274.889
Hint
pi
const double pi=4.0 * atan(1.0);
Source
零起点学算法11——求梯形面积
Time Limit:1000MS Memory Limit:65536K
Total Submit:3861 Accepted:1645
Description
Input
输入3个浮点数,分别表示上底、下底和高,中间用逗号隔开
Output
输出梯形的面积,保留2位小数
Sample Input
2,4,5
Sample Output
15.00
Hint
注意输入语句
3个数之间用逗号隔开的,
Source
零起点学算法12——求2个日期之间的天数
Time Limit:1000MS Memory Limit:65536K
Total Submit:2438 Accepted:1464
Description
Input
输入2个日期,日期按照年月日,年月日之间用符号-隔开
Output
求出这2个日期之间的天数(不包括自身)
Sample Input
2011-1-1 2011-1-5
Sample Output
3
Hint
为了简单之见,本题假设输入的是同年同月的2个日期,且第一个日期小于第2个日期
Source
零起点学算法13——求2个时间之间的分钟数
Time Limit:1000MS Memory Limit:65536K
Total Submit:1675 Accepted:1182
Description
输入2个时间,求2个时间之间的分钟数(不包括自身),为了简单之见假设这2个时间在同一天且前面的时间较小
Input
输入2行,分别是2个时间,时间小时与分钟之间用:隔开
Output
输出之间的分钟数
Sample Input
12:12 12:16
Sample Output
3
Source
零起点学算法14——三位数反转
Time Limit:1000MS Memory Limit:65536K
Total Submit:1813 Accepted:1305
Description
输入1个3位数,分离出它的百位、十位和个位,反转后输出
Input
输入1个3位整数
Output
输出3位整数的反转数
Sample Input
250
Sample Output
052
Hint
分离出各位数字可以用取余和除数
注意在C语言里,2个整数相乘除结果还是整数 比如8/3在C语言里结果是2 取余采用符号%
比如8%3的结果应该是2即8除以3后的余数
Source
零起点学算法15——交换变量
Time Limit:1000MS Memory Limit:65536K
Total Submit:1742 Accepted:1289
Description
输入2个整数,交换后输出
Input
输入2个整数
Output
交换后输出
Sample Input
825 23
Sample Output
23 825
Hint
在C语言里,交换可以用3变量法,要实现a和b交换,先将变量a的值保存到变量c,然后将变量b的值赋值给a,然后将c的值(最初a的值)赋值给b 赋值语句 c=a;
等号左边是一个变量,用来存放值,右边是一个表达式,计算这个表达式后保存到等号左边的变量中
Source
零起点学算法16——鸡兔同笼
正在阅读:
理工oj题目10-04
沥青砼路面AC-20试验路总结报告.--1doc.doc808-31
统计学03-10
都是贪玩惹的祸作文400字06-21
桥湾750kV变电站工程750kV及主变构架安装技术措施08-17
国际结算银行往来函电格式参考12-04
论培养大学生科技创新能力的意义11-13
网络安全技术复习题07-18
小学安全应急演练活动方案05-28
应世致用和文明生存12-16
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 理工
- 题目
- 2003~2007 江 苏 省 专 转 本 数 学 试 题 及 答 案
- 高等数学IB复习题
- 同城融资网-中国中小企业节
- 2-2012北京市西城区2012年初三二模试卷
- 毕业设计:基于PLC的交通灯控制1
- 减速器设计说明书
- 复方甘草酸苷联合护肝片对抗结核药所致肝损害疗效观察
- 全套中频感应加热设计资料
- 高二地理学科期中学情分析报告
- 考研数学一概率统计86-10年真题
- 2019-2020学年高中数学第一章集合与函数概念1.2.1函数的概念教案新人教A版必修1.doc
- 模拟商务谈判案例分析
- 计算机仿真技术作业与实验指导书(材2016)
- TDD物理层理论峰值速率计算方法 - 图文
- 乡镇村干部工资报酬管理办法
- 论文修改(2)
- 英语语言学
- 2018高考一轮数学浙江专版练习第7章 第2节 课时分层训练37 含答案 精品
- 机械制造工艺课程法兰盘设计说明书
- 人教版一年级上册数学第一单元第1课时 数一数教案设计