腾讯客户端笔试:1,0,1,1,0(奉上代码啦)
可能我今天睡得好,感觉比前两次简单啊
但是断网断了两次,好怕被判作弊啊啊
然后我看到大家貌似没有这么顺利,就开始怀疑系统是不是断网断叉了,给我a了3道。心慌😂
提交之后看到答案是a了,我也蛮意外的,真的就是贪心啊这三道题。
然后没继续做了,赶紧提交了,因为真的怕再断网了,对我来说能a三道就很不错了😂
第一题:电话号码
import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); List<String> inputs = new ArrayList<>(); for(int i = 0; i < n; i++){ int l = scanner.nextInt(); String input = scanner.next(); inputs.add(input); } scanner.close(); for(String input : inputs){ System.out.println(isValid(input)); } } private static String isValid(String input){ for(int i = 0; i < input.length(); i++){ char ch = input.charAt(i); if(ch == '8'){ if(input.length() - i >= 11) return "YES"; } } return "NO"; } }第三题 最大身高差最小
import java.util.Arrays; import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int[] numbers = new int[n]; for(int i = 0; i < n; i++){ numbers[i] = scanner.nextInt(); } scanner.close(); Arrays.sort(numbers); int[] outputs = new int[n]; int i = 0; int j = n - 1; int k = 0; while (i < j){ outputs[i++] = numbers[k++]; outputs[j--] = numbers[k++]; } if(k < n){ outputs[i] = numbers[k]; } for(int number : outputs){ System.out.print(number + " "); } System.out.println(); } }
import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int[] numbers = new int[n]; for(int i = 0; i < n; i++){ numbers[i] = scanner.nextInt(); } scanner.close(); int count = 0; while (true){ int index = -1; for(int i = 0; i < n; i++){ if(numbers[i] > 0){ index = i; break; } } if(index == -1) break; int horizontal = 0; int vertical = numbers[index]; for(int i = index; i < n; i++){ if(numbers[i] == 0) break; horizontal += 1; } if(vertical > horizontal){ numbers[index] = 0; } else{ for(int i = index; i < n; i++){ if(numbers[i] == 0) break; numbers[i] -= 1; } } count += 1; } System.out.println(count); } }