美团9.2移动端/前端笔试
第一道题 小红抽卡
纯模拟 定义一个2n-1的数组进行不断插入
public class num { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int[] ans = new int[n]; for (int i = 0; i < n; i++) { ans[i] = in.nextInt(); } int a = 0; int b = 0; for (int i = 0; i < n - 1; i++) { if(ans[i] > ans[i + 1]){ a = i; b = i + 1; break; } } int[] res = new int[2 * n - 1]; int num = 2000000000 - 1; for (int i = 0; i < n; i++) { if(i == b){ res[2 * i] = ans[i]; }else if(i > b){ res[2 * i - 1] = num; res[2 * i] = ans[i]; }else if(i < b){ res[2 * i] = num; res[2 * i + 1] = ans[i]; } } System.out.println(res.length); for (int i = 0; i < res.length - 1; i++) { System.out.print(res[i] + " "); } System.out.print(res[res.length - 1]); } }
第二道题 小红高不高兴
直接输出n / 2通过全部用例