import java.util.Scanner;
public class Main {
@SuppressWarnings("resource")
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int t=sc.nextInt();
if(t==1) {
System.out.println("I love Luogu!");
}else if(t==2) {
System.out.println("6 4");
} else if(t==3) {
System.out.println(14/4);
System.out.println("12");
System.out.println("2");
}else if(t==4) {
double x=(double)500/3;
String y=String.format("%.3f", x);
System.out.println(y);
}else if(t==5){
System.out.println((220+260)/(20+12));
}else if(t==6) {
double n=Math.sqrt(6*6+9*9);
String m=String.format("%.4f",n);
System.out.println(m);
}else if(t==7) {
System.out.println(100+10);
System.out.println(110-20);
System.out.println("0");
}else if(t==8) {
double PI=3.141593;
int r=5;
double c=2*PI*r;
String cs=String.format("%.4f", c);
System.out.println(cs);
double s=PI*r*r;
String ss=String.format("%.4f", s);
System.out.println(ss);
double v=4*PI*r*r*r/3;
String vs=String.format("%.3f", v);
System.out.println(vs);
}else if(t==9) {
System.out.println((((1+1)*2+1)*2+1)*2);
}else if(t==10) {
System.out.println("9");
}else if(t==11) {
double s=1.0*100/3;
String ss=String.format("%.4f", s);
System.out.println(ss);
}else if(t==12) {
System.out.println((int)('M'-'A')+1);
System.out.println((char)('A'+18-1));
}else if(t==13) {
double PI=3.141593;
int r1=5,r2=10;
double v=4*PI*r1*r1*r1/3+4*PI*r2*r2*r2/3;
double a=Math.pow(v, 1.0*1/3);
System.out.println((int)a);
}else if(t==14) {
System.out.println("50");
}
}
}
if条件语句
if条件语句分为三种语法格式,具体如下:
(1)if语句
if语句是指如果满足某种条件,就进行某种处理,其语法格式如下所示:
if(条件语句){
代码块
}
上述语法格式中,判断条件是一个布尔值,当值为true时,才会执行{}中的语句。
(2)if…else语句
If…else语句是指如果满足某种条件,就进行某种处理,否则就进行另一种处理,其语法格式如下所示:
if(判断条件){
执行语句1
}else{
执行语句2
}
(3)if…else if…else语句
If…else if …else语句用于对多个条件进行判断,进行多种不同的处理,其语法格式如下所示:
if(判断条件1){
执行语句1
}else if(判断条件2){
执行语句2
}
...
else if(判断条件n){
执行语句n
}else{
执行语句n+1
}
基本准则:包含范围小的条件放前处理。
tips:
- 按题目输出,注意空格标点
- 2+4 10-(2+4)
- 14/4
14/44(14/4处因为整形的隐形转换,所以14/4是3,然后乘4,而不会直接消掉,而且注意从左到右的计算顺序,如果先乘4则4可以跟分母消掉就不对了)
14-14/44 - 500/3,注意有效数字包括整数部分和小数部分,整数部分是166,所以小数需要保留3位。
- 相遇问题:路程和=时间*速度和=火车长度和
- 勾股定理+Math.sqrt
- 100+10
100+10-20
没钱了肯定是0 - println和cout对输出的位数限制为:
本来见题目上对结果没有小数点位数限制,就直接输出了,但是一直在WA,~~差点以为我连勾股定理都不会了,~~看了看题解都是一行输出,用c++写了一下发现能过,于是乎对比了输出结果,发现位数之差有点多,这个细节要注意啦。
球的公式:(叶子每用一次都混一次)
S=4πr^2
V=4/3πr^3 - 使用倒推法解决。
- 小学奥数的牛吃草问题。但是在8台30分钟完成和10台6分钟完成之间,想要10分钟完成只能要九台。
或者算式:设每分钟增长y个任务,初始量为x,则x+30y=830 x+6y=106,解得x=15,y=7.5,代入求10台15+7.5*10=9 - 追及问题:路程差=追及时间*速度差
- 利用其余字母与A的ASCII码比较确定其余字符ASCII码。
利用A与其余字母的位置关系求具体字母,注意加一减一。 - Math.pow(x,y):返回x的y次方。
利用体积总和不变解。 - 一元二次方程。
设x为定价
x(10+110-x)=3500
解得x=50或70,由于取较小的那个数,所以x=50。
至于为什么不是价钱抬高,因为越抬高总价越小,可以算算试试,或者写个二次函数分析一下:y=x(10+110-x)=-x^2+120,对称轴在x=60处,开口向下,所以当x>110时,总价的趋势是递减。
最后吐槽这道题真是太太太细节了,突然羡慕c++组了,因为cout和println的差别我就找了一下午。写题解又是一下午www