2020年团体程序设计天梯赛L1全部题解(JAVA语⾔)
2020年团体程序设计天梯赛L1全部题解
我L1部分得分100分,全部AC了
L1-1 嫑废话上代码 (5分)
Linux 之⽗ Linus Torvalds 的名⾔是:“Talk is cheap. Show me the code.”(嫑废话,上代码)。本题就请你直接在屏幕上输出这句话。
输⼊格式:
本题没有输⼊。
输出格式:
在⼀⾏中输出 Talk is cheap. Show me the code.。
输⼊样例:
输出样例:
Talk is cheap. Show me the code.
public class Main {
public static void main(String[] args) {
System.out.print("Talk is cheap. Show me the code.");
}
}
L1-2 猫是液体 (5分)
测量⼀个⼈的体积是很难的,但猫就不⼀样了。因为猫是液体,所以可以很容易地通过测量⼀个长⽅体容器的容积来得到容器⾥猫的体积。本题就请你完成这个计算。
输⼊格式:
输⼊在第⼀⾏中给出 3 个不超过 100 的正整数,分别对应容器的长、宽、⾼。
输出格式:
在⼀⾏中输出猫的体积。
输⼊样例:
23 15 20
输出样例:
6900
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
int Int();
int Int();
int Int();
System.out.println(a*b*c);
}
}
L1-3 洛希极限 (10分)
科幻电影《流浪地球》中⼀个重要的情节是地球距离⽊星太近时,⼤⽓开始被⽊星吸⾛,⽽随着不断接近地⽊“刚体洛希极限”,地球⾯临被彻底撕碎的危险。但实际上,这个计算是错误的。
洛希极限(Roche limit)是⼀个天体⾃⾝的引⼒与第⼆个天体造成的潮汐⼒相等时的距离。当两个天体的距离少于洛希极限,天体就会倾向碎散,继⽽成为第⼆个天体的环。它以⾸位计算这个极限的⼈爱德华·洛希命名。(摘⾃百度百科)
⼤天体密度与⼩天体的密度的⽐值开 3 次⽅后,再乘以⼤天体的半径以及⼀个倍数(流体对应的倍数是 2.455,刚体对应的倍数是
1.26),就是洛希极限的值。例如⽊星与地球的密度⽐值开 3 次⽅是 0.622,如果假设地球是流体,那么洛希极限就是
0.622×2.455=1.52701 倍⽊星半径;但地球是刚体,对应的洛希极限是 0.622×1.26=0.78372 倍⽊星半径,这个距离⽐⽊星半径⼩,即只有当地球位于⽊星内部的时候才会被撕碎,换⾔之,就是地球不可能被撕碎。
本题就请你判断⼀个⼩天体会不会被⼀个⼤天体撕碎。
输⼊格式:
输⼊在⼀⾏中给出 3 个数字,依次为:⼤天体密度与⼩天体的密度的⽐值开 3 次⽅后计算出的值(≤1)、⼩天体的属性(0 表⽰流体、1表⽰刚体)、两个天体的距离与⼤天体半径的⽐值(>1 但不超过 10)。
输出格式:
在⼀⾏中⾸先输出⼩天体的洛希极限与⼤天体半径的⽐值(输出⼩数点后2位);随后空⼀格;最后输出 ^_^如果⼩天体不会被撕碎,否则输出 T_T。
输⼊样例1:
0.622 0 1.4
输出样例1:
1.53 T_T
输⼊样例2:
0.622 1 1.4
输出样例2:
0.78 ^_^
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
double Double();
int Int();
double Double();
double d=0;
if(b==0)
d=2.455*a;
else
d=1.26*a;
System.out.print(String.format("%.2f", d)+" ");
if(d<c) System.out.print("^_^");
else System.out.print("T_T");
}
}
L1-4 调和平均 (10分)
N 个正数的算数平均是这些数的和除以 N,它们的调和平均是它们倒数的算数平均的倒数。本题就请你计算给定的⼀系列正数的调和平均值。
输⼊格式:
每个输⼊包含 1 个测试⽤例。每个测试⽤例第 1 ⾏给出正整数 N (≤1000);第 2 ⾏给出 N 个正数,都在区间 [0.1,100] 内。
输出格式:
在⼀⾏中输出给定数列的调和平均值,输出⼩数点后2位。
输⼊样例:
8
10 15 12.7 0.3 4 13 1 15.6
输出样例:
1.61
import java.util.Scanner;
public class Main {
456什么意思网络流行语public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
int Int();
double sum=0;
for (int i = 0; i < a; i++) {
double Double();
c=1.000/c;
sum+=c;
}
sum=sum/a;
sum=1.000/sum;
System.out.println(String.format("%.2f", sum));
}
}
L1-5 胎压监测 (15分)
⼩轿车中有⼀个系统随时监测四个车轮的胎压,如果四轮胎压不是很平衡,则可能对⾏车造成严重的影响。
让我们把四个车轮 —— 左前轮、右前轮、右后轮、左后轮 —— 顺次编号为 1、2、3、4。本题就请你编写⼀个监测程序,随时监测四轮的胎压,并给出正确的报警信息。报警规则如下:
如果所有轮胎的压⼒值与它们中的最⼤值误差在⼀个给定阈值内,并且都不低于系统设定的最低报警胎压,则说明情况正常,不报警;
如果存在⼀个轮胎的压⼒值与它们中的最⼤值误差超过了阈值,或者低于系统设定的最低报警胎压,则不仅要报警,⽽且要给出可能漏⽓的轮胎的准确位置;
如果存在两个或两个以上轮胎的压⼒值与它们中的最⼤值误差超过了阈值,或者低于系统设定的最低报警胎压,则报警要求检查所有轮胎。输⼊格式:
输⼊在⼀⾏中给出 6 个 [0, 400] 范围内的整数,依次为 1~4 号轮胎的胎压、最低报警胎压、以及胎压差的阈值。
输出格式:
根据输⼊的胎压值给出对应信息:
如果不⽤报警,输出 Normal;
如果有⼀个轮胎需要报警,输出 Warning: please check #X!,其中 X 是出问题的轮胎的编号;
如果需要检查所有轮胎,输出 Warning: please check all the tires!。
输⼊样例1:
242 251 231 248 230 20
输出样例1:
Normal
输⼊样例2:
242 251 232 248 230 10
输出样例2:
Warning: please check #3!
输⼊样例3:
240 251 232 248 240 10
输出样例3:
Warning: please check all the tires!
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
int a[]=new int[4];
a[0]=sc.nextInt();
int big=a[0];int small=a[0];
for (int i = 1; i < a.length; i++) {
a[i]=sc.nextInt();
if(big<a[i]) big=a[i];
if(small>a[i]) small=a[i];
}
int Int();
int Int();
int asd=big-small;
if(a[0]>=dixian&&asd<=ya)
System.out.println("Normal");
else {
int flag=-1;
int more=0;
for (int i = 0; i < a.length; i++) {
if(a[i]<dixian||big-a[i]>ya) { flag=i+1;more++;}
}
if(more==1) {
System.out.println("Warning: please check #"+flag+"!");      }else {
System.out.println("Warning: please check all the tires!");  }
}
}
}
L1-6 吃⽕锅 (15分)