

暴力过不去,需要优化一下,本来是在全部的子弹中统计,维护一个100的数据统计数组来统计,每次的遍历就变少了,才能过时间
package com.js.datastructure.recursion.niuke.yuesai;
import java.util.Scanner;
public class yuesai115_03 {//优化去维护一个记录前面和后面的值,遍历的是100,比较小。
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[] da = new int[n + 1];
for (int i = 1; i <= n; i++) {
da[i] = scanner.nextInt();
}
int q = scanner.nextInt();
int v = scanner.nextInt();
int [] sh = new int[n+1];
int [] nu = new int[101];
for (int i = n; i > 0 ; i--) {
nu[da[i]]++;
for (int j = da[i]+1; j < 101; j++) {
sh[i] = sh[i] + nu[j];
}
}
int num = 0;
int min = Integer.MAX_VALUE;
for (int i = 1; i <= n; i++) {
if(da[i] > v){
num++;
int t = num -1;
min = Math.min(min,t+sh[i]);
}
}
System.out.println(min);
}
}
496

被折叠的 条评论
为什么被折叠?



