网易互娱开发第四题
求大佬帮看下代码!
package 笔试; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] data = new int[n]; for (int i = 0; i < n; i++) { data[i] = sc.nextInt(); } int count = sc.nextInt(); int q[] = new int[count]; for (int i = 0; i < count; i++) { q[i] = sc.nextInt(); } for (int j = 0; j < count; j++) { int res = solu(q[j], data); System.out.println(res); } } /* 10 6 12 20 14 15 15 7 19 18 13 6 15 23 19 1 17 24 */ public static int solu(int num, int[] arr) { int len = arr.length; int dp[] = new int[len]; int end[] = new int[len]; for (int k = 0; k < len; k++) { end[k] = -1; } if (arr[0] > num) { dp[0] = 1; end[0] = 0; } for (int i = 1; i < len; i++) { if ((i - 1) != end[i - 1]) { if (arr[i] > num) { dp[i] = dp[i - 1] + 1; end[i] = i; } else { dp[i] = dp[i - 1]; end[i] = end[i - 1]; } } else{ if (arr[i] > num) { dp[i] = dp[i - 1]; end[i] = i; } else { dp[i] = dp[i - 1]; end[i] = end[i - 1]; } } } return dp[len - 1]; } }