400字范文,内容丰富有趣,生活中的好帮手!
400字范文 > 洛谷入门题单 --【入门1】顺序结构 题解

洛谷入门题单 --【入门1】顺序结构 题解

时间:2019-12-07 07:25:24

相关推荐

洛谷入门题单 --【入门1】顺序结构 题解

- [P1001 A+B Problem]- [P1000 超级玛丽游戏]- [P5703 【深基2.例5】苹果采购]- [P5704 【深基2.例6】字母转换]- [P5705 【深基2.例7】数字反转]- [P5706 【深基2.例8】再分肥宅水]- [P1425 小鱼的游泳时间]- [P2433 【深基1-2】小学数学 N 合一]- [P5708 【深基2.习2】三角形面积]- [P1421 小玉买文具]- [P5709 【深基2.习6】Apples Prologue / 苹果和虫子]- [P2181 对角线]- [P5707 【深基2.例12】上学迟到]- [P3954 [NOIP 普及组] 成绩]

P1001 A+B Problem

题目描述

输入两个整数a, b,输出它们的和。

注意

Pascal 使用integer会爆掉哦!有负数哦!C/C++ 的 main 函数必须是int类型,而且 C 最后要return 0。这不仅对洛谷其他题目有效,而且也是 NOIP/CSP/NOI 比赛的要求!

好吧,同志们,我们就从这一题开始,向着大牛的路进发。

任何一个伟大的思想,都有一个微不足道的开始。

输入格式

两个以空格分开的整数。

输出格式

一个整数。

输入输出样例

输入 #1复制

20 30

输出 #1复制

50

题解:

#include<stdio.h>int main(){int a=0,b=0,sum=0;scanf("%d %d",&a,&b);sum=a+b;printf("%d",sum);return 0;}

P1000 超级玛丽游戏

题目背景

本题是洛谷的试机题目,可以帮助了解洛谷的使用。

建议完成本题目后继续尝试P1001、P1008。

另外强烈推荐新用户必读贴

题目描述

超级玛丽是一个非常经典的游戏。请你用字符画的形式输出超级玛丽中的一个场景。

********************####....#.#..###.....##....###.......###### ### ###...........#...##...###*####### #.#.##.#.#####*******###### #.#.##.#.#...#***.****.*###....#...##...#....**********##..... ### ###....**** *****....#### ########## #####################################################################...#......#.##...#......#.##...#......#.##------------------############################################------------------##..#....#....##..#....#....##..#....#....############################################################### #----------##.....#......##.....#......##.....#......# #----------########################################### #----------##.#..#....#..##.#..#....#..##.#..#....#..# #----------########################################### ############

输入格式

输出格式

如描述

输入输出样例

题解:

#include<stdio.h>int main(){printf("********\n");printf("************\n");printf("####....#.\n");printf(" #..###.....##....\n");printf(" ###.......###### ### ###\n");printf("...........#...##...#\n");printf("##*####### #.#.##.#.#\n");printf(" ####*******###### #.#.##.#.#\n");printf(" ...#***.****.*###....#...##...#\n");printf(" ....**********##..... ### ###\n");printf(" ....**** *****....\n");printf(" #### ####\n");printf(" ###### ######\n");printf("##############################################################\n");printf("#...#......#.##...#......#.##...#......#.##------------------#\n");printf("###########################################------------------#\n");printf("#..#....#....##..#....#....##..#....#....#####################\n");printf("########################################## #----------#\n");printf("#.....#......##.....#......##.....#......# #----------#\n");printf("########################################## #----------#\n");printf("#.#..#....#..##.#..#....#..##.#..#....#..# #----------#\n");printf("########################################## ############\n");}

P5703 【深基2.例5】苹果采购

题目描述

现在需要采购一些苹果,每名同学都可以分到固定数量的苹果,并且已经知道了同学的数量,请问需要采购多少个苹果?

输入格式

输入两个不超过10^9109正整数,分别表示每人分到的数量和同学的人数。

输出格式

一个整数,表示答案。保证输入和答案都在int范围内的非负整数。

输入输出样例

输入 #1复制

5 3

输出 #1复制

15

题解:

#include<stdio.h>int main(){int i,m,n;scanf("%d %d",&i,&m);n=i*m;printf("%d",n);return 0;}

P5704 【深基2.例6】字母转换

题目描述

输入一个小写字母,输出其对应的大写字母。例如输入 q[回车] 时,会输出 Q。

输入格式

输出格式

输入输出样例

输入 #1复制

q

输出 #1复制

Q

题解:

#include<stdio.h>int main(){char i;i=getchar();putchar(i-32);return 0;}

P5705 【深基2.例7】数字反转

题目描述

输入一个不小于100100且小于10001000,同时包括小数点后一位的一个浮点数,例如123.4123.4,要求把这个数字翻转过来,变成4.3214.321并输出。

输入格式

一行一个浮点数

输出格式

一行一个浮点数

输入输出样例

输入 #1复制

123.4

输出 #1复制

4.321

题解:

#include<stdio.h>int main(){char g,h,j,k;scanf("%c%c%c.%c",&g,&h,&j,&k);printf("%c.%c%c%c",k,j,h,g);return 0;}

P5706 【深基2.例8】再分肥宅水

题目描述

现在有 t 毫升肥宅快乐水,要均分给 n 名同学。每名同学需要 2 个杯子。现在想知道每名同学可以获得多少毫升饮料(严格精确到小数点后 3 位),以及一共需要多少个杯子。输入一个实数 t 和一个整数 n,使用空格隔开。输出两个数字表示答案,使用换行隔开。

0≤t≤10000且不超过3位小数,1≤n≤1000

输入格式

输出格式

输入输出样例

输入 #1复制

500.0 3

输出 #1复制

166.6676

题解:

#include<stdio.h>int main(){int n;float t;scanf("%f %d",&t,&n);float i;int j;i=t/n;j=2*n;printf("%.3f\n%d",i,j);return 0;}

P1425 小鱼的游泳时间

题目描述

伦敦奥运会要到了,小鱼在拼命练习游泳准备参加游泳比赛,可怜的小鱼并不知道鱼类是不能参加人类的奥运会的。

这一天,小鱼给自己的游泳时间做了精确的计时(本题中的计时都按24小时制计算),它发现自己从a时b分一直游泳到当天的c时d分,请你帮小鱼计算一下,它这天一共游了多少时间呢?

小鱼游的好辛苦呀,你可不要算错了哦。

输入格式

一行内输入 4 个整数,分别表示 a, b, c, d。

输出格式

一行内输出 2 个整数 e 和 f,用空格间隔,依次表示小鱼这天一共游了多少小时多少分钟。其中表示分钟的整数 f 应该小于60。

输入输出样例

输入 #1复制

12 50 19 10

输出 #1复制

6 20

说明/提示

对于全部测试数据,0\le a,c \le 240≤a,c≤24,0\le b,d \le 600≤b,d≤60,且结束时间一定晚于开始时间。

题解:

#include<stdio.h>int main(){int a,b,c,d;scanf("%d %d %d %d",&a,&b,&c,&d);int e,f;if(d-b<0){e=c-(a+1);f=60-b+d;}else{e=c-a;f=d-b;}printf("%d %d",e,f);return 0;}

P2433 【深基1-2】小学数学 N 合一

题目描述

问题 1

请输出I love Luogu!

问题 2

这里有 10 个苹果,小A 拿走了 2 个,Uim 拿走了 4 个,八尾勇拿走剩下的所有的苹果。我们想知道:

小A 和 Uim 两个人一共拿走多少苹果?八尾勇能拿走多少苹果?

现在需要编写一个程序,输出两个数字作为答案,中间使用空格分开。

问题 3

现在有 14 个苹果。要均分给 4 名同学,分不掉的苹果放回冰箱。请问:

每位同学能分得几个苹果?

一共分出去多少苹果?

把几个苹果放回冰箱?

现在需要编写一个程序,输出三个数字作为答案,每个数字一行。

问题 4

现在有 500 毫升的肥宅快乐水,要均分给 3 名同学,每位同学可以分到多少毫升?请输出一个数字作为输出。保留 6 位有效数字,且不使用科学计数法。

问题 5

甲列火车长 260 米,每秒行 12 米;乙列火车长 220 米,每秒行 20 米,两车相向而行,从两车车头相遇时开始计时,多长时间后两车车尾相离?已知答案是整数。

问题 6

一个长方形长宽分别是 6cm、9cm,求它的对角线长度(cm)。直接使用 cout 输出。

问题 7

Uim 银行账户里面有100元。经过了下面的操作:

往里面存了 10 元;

购物花掉了 20 元;

把里面的钱全部取出。

请在每次操作后输出账户余额,并使用换行符隔开。

问题 8

当半径为 r=5,请输出圆的周长、面积和球体积。取 π=3.141593。请直接使用 cout 输出答案,每行一个数字。

问题 9

一只小猴买了若干个桃子。第一天他刚好吃了这些桃子的一半,又贪嘴多吃了一个;第二天他也刚好吃了剩余桃子的一半,贪嘴多吃了一个;第三天他又刚好吃了剩下的桃子的一半,并贪嘴多吃了一个。第四天起来一看,发现桃子只剩下一个了。请问小猴买了几个桃子?

问题 10

洛谷的评测任务是单位时间内均匀增加的。8 台评测机 30 分钟可以刚好把评测队列中的程序评测完毕,10 台评测机 6 分钟可以刚好把评测队列中的程序评测完毕,请问几台评测机可以在 10 分钟时刚好把评测队列中的程序评测完毕?

问题 11

小A跑步速度 5m/s,八尾勇跑步速度 8m/s,八尾勇在小A后面 100m,他们同时起跑,请问需要多长时间八尾勇可以追上小A?输出一个数字表示答案,使用 cout 直接输出。

问题 12

大家都知道有 26 个英文字母,其中A是第一个字母。现在请编程求出:

M 是字母表中的第几个字母?第 18 个字母是什么?

输出一个数字和一个字母,使用换行隔开。

问题 13

小 A 有两块球形橡皮泥,一个半径是 4,一个半径是 10。他想把这两块橡皮泥揉在一起,然后塑造成一个正方体,请问这个正方体的棱长是多少?如果结果不是整数,则舍去小数点之后的数字。取\pi = 3.141593π=3.141593。

问题 14

根据咕咕网校的预测,当课程定价为 110 元时,会有 10 人报名。如果课程价格每降低 1 元,就会多 1 名报名者(反之亦然)。如果希望总共能收到 3500 元学费的话,那么应该定价多少呢?已知本题有两个答案符合要求,则取较小的那一个。如果这个答案不是整数,则需四舍五入精确到整数。

输入格式

输入一个数字,表示第几个问题。

输出格式

根据每个问题,输出一个答案。

输入输出样例

输入 #1复制

2

输出 #1复制

6 4

说明/提示

请解决以下小学数学题。你可以提交答案,也可以写一个程序。

对于本题来说,如果你不知道怎么输入,也可以这么抄:

#include<iostream>// 填上你觉得需要的其他头文件using namespace std;int main() {int T;cin >> T;if (T == 1) {// 粘贴问题 1 的主函数代码,除了 return 0cout << "I love Luogu!";} else if (T == 2) {// 粘贴问题 2 的主函数代码,除了 return 0cout << 2 + 4 << " " << 10 - 2 - 4;} else if (T == 3) {// 请自行完成问题 3 的代码} else if (T == 4) {// 请自行完成问题 4 的代码} else if (T == 5) {// 请自行完成问题 5 的代码} else if (T == 6) {// 请自行完成问题 6 的代码} else if (T == 7) {// 请自行完成问题 7 的代码} else if (T == 8) {// 请自行完成问题 8 的代码} else if (T == 9) {// 请自行完成问题 9 的代码} else if (T == 10) {// 请自行完成问题 10 的代码} else if (T == 11) {// 请自行完成问题 11 的代码} else if (T == 12) {// 请自行完成问题 12 的代码} else if (T == 13) {// 请自行完成问题 13 的代码} else if (T == 14) {// 请自行完成问题 14 的代码}return 0;}

题解:

#include<stdio.h>int main(){int i;scanf("%d",&i);if(i==1)printf("I love Luogu!");if(i==2){printf("6 4"); }if(i==3){printf("3\n12\n2");}if(i==4){printf("166.667\n");}if(i==5){printf("15\n");}if(i==6){printf("10.8167\n");}if(i==7){printf("110\n90\n0\n");} if(i==8){printf("31.4159\n78.5398\n523.599\n");}if(i==9){printf("22\n");}if(i==10){printf("9");}if(i==11){printf("33.3333");}if(i==12){printf("%d\n%c",'M'-'A'+1,'A'+18-1);}if(i==13){printf("%d",16);}if(i==14){printf("%d",50);}return 0;}

P5708 【深基2.习2】三角形面积

题目描述

一个三角形的三边长分别是a、b、c,那么它的面积为\sqrt{p(p-a)(p-b)(p-c)},其中p=1​/2(a+b+c)。输入这三个数字,计算三角形的面积,四舍五入精确到 1 位小数。

保证能构成三角形,每个边长输入时不超过2位小数。

输入格式

输出格式

输入输出样例

输入 #1复制

3 4 5

输出 #1复制

6.0

题解:

#include<stdio.h>#include<math.h> int main(){double a,b,c;scanf("%lf %lf %lf",&a,&b,&c);double p,d,s;p=(a+b+c)/2;d=p*(p-a)*(p-b)*(p-c);s=sqrt(d);printf("%.1f\n",s);return 0;}

P1421 小玉买文具

题目描述

班主任给小玉一个任务,到文具店里买尽量多的签字笔。已知一只签字笔的价格是1元9角,而班主任给小玉的钱是a元b角,小玉想知道,她最多能买多少只签字笔呢。

输入格式

输入只有一行两个整数,分别表示a和b。

输出格式

输出一行一个整数,表示小玉最多能买多少只签字笔。

输入输出样例

输入 #1复制

10 3

输出 #1复制

5

说明/提示

数据规模与约定

对于全部的测试点,保证0 \leq a \leq 10^40≤a≤104,0 \leq b \leq 90≤b≤9。

题解:

#include<stdio.h>int main(){int a,b,n,s;scanf("%d %d",&a,&b);n=a*10+b;s=n/19;printf("%d",s);return 0;}

P5709 【深基2.习6】Apples Prologue / 苹果和虫子

题目描述

八尾勇喜欢吃苹果。她现在有m个苹果,吃完一个苹果需要花费t分钟,吃完一个后立刻开始吃下一个。现在时间过去了s分钟,请问她还有几个完整的苹果?

输入格式

输入三个非负整数表示m, t, s。

输出格式

输出一个整数表示答案。

如果你出现了 RE,不如检查一下被零除?

输入输出样例

输入 #1复制

50 10 200

输出 #1复制

30

题解:

#include<bits/stdc++.h>using namespace std;int main(){int m,t,s;cin>>m>>t>>s;if(t==0){cout<< 0 <<endl;return 0;}if(s%t==0)cout<< max(m-s/t,0) <<endl;elsecout<< max(m-s/t-1,0) <<endl;return 0;}

P2181 对角线

题目描述

对于一个n个顶点的凸多边形,它的任何三条对角线都不会交于一点。请求出图形中对角线交点的个数。

例如,6边形:

输入格式

输入只有一行一个整数n,代表边数。

输出格式

输出一行一个整数代表答案。

输入输出样例

输入 #1复制

3

输出 #1复制

0

输入 #2复制

6

输出 #2复制

15

说明/提示

数据规模与约定

对于50 \%50%的数据,保证3 \leq n \leq 1003≤n≤100。对于100 \%100%的数据,保证3 \leq n \leq 10^53≤n≤105。

题解:

#include<bits/stdc++.h>using namespace std;int main(){unsigned long long n,num;scanf("%lld",&n);num=n*(n-1)/2*(n-2)/3*(n-3)/4;cout<< num <<endl;return 0;}

P5707 【深基2.例12】上学迟到

题目描述

yyy 的学校要求早上 8 点前到达。学校到 yyy 的家一共有s(s≤10000)米,而 yyy 可以以v((v<10000)米每分钟的速度匀速走到学校。此外在上学路上它还要额外花 10 分钟时间进行垃圾分类。请问为了避免迟到 yyy 最晚什么时候出门?输出HH:MM的时间格式,不足两位时补零。由于路途遥远, yyy 可能不得不提前一天出发,不过不可能提前超过一天。

输入格式

两个正整数 s,v,意思已经在题目中给定。

输出格式

hh:mm 表示最晚离开家的时间(时:分,必须输出两位,不足两位前面补0)

输入输出样例

输入 #1复制

100 99

输出 #1复制

07:48

题解:

#include<iostream>using namespace std;int main(){long s,v,m,h,t;cin >>s>>v;if (s%v==0){t=s/v+10;}else{t=s/v+11;}h=t/60;m=t%60;h=7-h;m=60-m;if(m<0){h=h-1;m+=60;}if(h<0){h+=24;}if(h<10){cout<<0<<h<<":";}else cout<<h<<":";if(m==60){cout<< "00" <<endl;}else if(m<10){cout<< "0" << m <<endl;}else{cout<< m <<endl;}return 0;}

P3954 [NOIP 普及组] 成绩

题目背景

NOIP 普及组 T1

题目描述

牛牛最近学习了 C++ 入门课程,这门课程的总成绩计算方法是:

总成绩=作业成绩×20%+小测成绩×30%+期末考试成绩×50%

牛牛想知道,这门课程自己最终能得到多少分。

输入格式

三个非负整数A,B,C,分别表示牛牛的作业成绩、小测成绩和期末考试成绩。相邻两个数之间用一个空格隔开,三项成绩满分都是100分。

输出格式

一个整数,即牛牛这门课程的总成绩,满分也是100分。

输入输出样例

输入 #1复制

100 100 80

输出 #1复制

90

输入 #2复制

60 90 80

输出 #2复制

79

说明/提示

输入输出样例 1 说明

牛牛的作业成绩是100分,小测成绩是100分,期末考试成绩是80 分,总成绩是100 \times 20\%+100 \times 30\%+80 \times 50\%=20+30+40=90100×20%+100×30%+80×50%=20+30+40=90。

输入输出样例 2 说明

牛牛的作业成绩是60 分,小测成绩是90分,期末考试成绩是80 分,总成绩是60 \times 20\%+90 \times 30\%+80 \times 50\%=12+27+40=7960×20%+90×30%+80×50%=12+27+40=79。

数据说明

对于30% 的数据,A=B=0

对于另外30%的数据,A=B=100

对于100% 的数据,0≤A,B,C≤100 且A,B,C 都是10 的整数倍。

题解:

#include<bits/stdc++.h>using namespace std;int main(){unsigned int A,B,C;cin>>A >>B >>C;int sum;sum=A*0.2+B*0.3+C*0.5;cout<<sum<<endl;return 0;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。