爱奇艺编程
第一题
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String str = in.nextLine();
char[] chars = str.toCharArray();
int a = chars[0] + chars[1] + chars[2] - 144;
int b = chars[3] + chars[4] + chars[5] - 144;
int min1 = chars[0];
int min2 = chars[3];
for (int i = 0; i < chars.length; i++) {
if (i >= 1 && i <= 2) {
min1 = Math.min(min1, chars[i]);
}
if (i >= 4 && i <= 5) {
min2 = Math.min(min2, chars[i]);
}
}
int min = a < b ? min1 - 48 : min2 - 48;
if (a == b) {
System.out.println(0);
} else if (Math.abs(a - b) >= 19) {
System.out.println(3);
} else if (Math.abs(a - b) <= 9 - min) {
System.out.println(1);
} else {
System.out.println(2);
}
}
}
本渣对于编程题已经失去了梦想,也就靠着输出碰瓷答案这样子维持生活,这题直接输出0过了18%,1和3都过了9%,2过了64%,然后把1和3这两种情况分别考虑下就AC了
第二题
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int m = in.nextInt();
int k = in.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = in.nextInt();
}
in.nextLine();
String[] strings;
for (int i = 0; i < m; i++) {
strings = in.nextLine().split("\\s+");
int a = strings[0].equals("A") ? 1 : -1;
int b = Integer.parseInt(strings[1]) - 1;
arr[b] += a;
}
int x = arr[k - 1];
Arrays.sort(arr);
int i = arr.length - 1;
for (; i >= 0; i--) {
if (arr[i] == x) break;
}
if (i == 0 && arr[i] != x) System.out.println(-1);
else System.out.println(arr.length - i);
}
}
#爱奇艺#