130 道基础OJ编程题之: 108 ~ 119
@[toc]
108. BC111 小乐乐与进制转换
import java.util.Scanner;
import java.lang.Integer;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num = in.nextInt();
System.out.println(Integer.toString(num,6));
}
}
109. BC112 小乐乐求和
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
long sum = 0L;
for(int i = 1; i <= n; i++) {
sum += (long)i;
}
System.out.println(sum);
}
}
110. BC113 小乐乐定闹钟
import java.util.Scanner;
import java.lang.Integer;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String s = in.next();
String[] arr = s.split(":"); // 根据 ":" 冒号进行一个分隔
int k = in.nextInt();
int h = Integer.parseInt(arr[0]); // 将字符串转换为 int 类型
int m = Integer.parseInt(arr[1]);
// hour = (hour + (20 + 100) / 60) % 24
int hour = (h + (m + k) / 60) % 24;
// minute = (20 + 100) % 60 = 0;
int minute = (m + k) % 60 ;
System.out.printf("%02d:%02d",hour,minute);
}
}
111. BC114 小乐乐排电梯
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
// 电梯一次可以上 12 人,然后,每次上下一共花费 4 分钟,单上/下花费 2 分钟
System.out.println(n/12*4+2);
}
}
112. BC115 小乐乐与欧几里得
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
long num1 = in.nextLong();
long num2 = in.nextLong();
long temp = num1 < num2 ? num1 : num2;
while( num1 % temp != 0 || num2 % temp != 0) {
temp--;
}
long temp2 = num1 * num2 / temp;
System.out.println(temp + temp2);
}
}
113. BC116 小乐乐改数字
import java.util.Scanner;
import java.lang.Math;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num = in.nextInt();
int n = 0;
int ret = 0;
while(num > 0) {
int w = num % 10 ; // 取出个位上的值
if( w % 2 == 0) { // 偶数
w = 0;
} else {
w = 1;
}
ret += w *(Math.pow(10,n));
num = num / 10; // 往右取值
n++;
}
System.out.println(ret);
}
}
114. BC117 小乐乐走台阶
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
System.out.println(stairs(n));
}
public static int stairs(int n) {
if(n <=2) {
return n;
} else {
return stairs(n - 1) + stairs(n -2);
}
}
}
115. BC118 小乐乐与序列
import java.util.Scanner;
import java.lang.Integer;
import java.util.Set;
import java.util.HashSet;
import java.util.Arrays;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
Set<Long> set = new HashSet<Long>();
int n = in.nextInt();
// 注意 hasNext 和 hasNextLine 的区别
for (int i = 0; i < n; i++) {
set.add(in.nextLong());
}
Object[] array = set.toArray();
Arrays.sort(array);
for (Object num : array) {
System.out.print(num + " ");
}
}
}
116. BC119 小乐乐与字符串
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
String str = in.next();
Long c = 0L;
Long h = 0L;
Long n = 0L;
for(int i = 0; i < str.length(); i++) {
if(str.charAt(i) == 'C') {
c++;
} else if ('H' == str.charAt(i)) {
h += c;
} else if('N' == str.charAt(i)) {
n += h;
}
}
System.out.println(n);
}
}
117. BC123 小乐乐找最大数
import java.util.Scanner;
import java.util.Arrays;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int[] arr = new int[4];
// 注意 hasNext 和 hasNextLine 的区别
for(int i = 0; i < arr.length; i++) {
arr[i] = in.nextInt();
}
Arrays.sort(arr);
System.out.println(arr[arr.length -1]);
}
}
118. BC125 小乐乐转换成绩
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
int num = in.nextInt();
if (num <= 100 && num >= 90) {
System.out.println("A");
} else if (num <= 89 && num >= 80) {
System.out.println("B");
} else if (num <= 79 && num >= 70) {
System.out.println("C");
} else if (num <= 69 && num >= 60) {
System.out.println("D");
} else if (num <= 59 && num >= 0) {
System.out.println("E");
} else {
System.out.println("F");
}
}
}
119. BC129 小乐乐计算函数
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
int b = in.nextInt();
int c = in.nextInt();
float m = (max(a+b,b,c) / (max(a,b+c,c) + max(a,b,b+c)));
System.out.printf("%.2f",m);
}
public static float max(int a,int b,int c) {
int max = a;
if(max < b) {
max = b;
}
if(max < c) {
max = c;
}
return (float)(max * 1.0);
}
}
最后:
“在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。感谢你们,我们总会在某个时刻再次相遇。”