ACM模式和力扣题目最大的区别就是ACM模式中所有代码都要自己写
题目信息
链接:https://kamacoder.com/problempage.php?pid=1070
描述:
题解过程及思路
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
//数组长度
int n = scanner.nextInt();
//数组
int[] vec = new int[n];
//存放数组每个下标的区间和的数组
int[] vecSum = new int[n];
//区间和,默认从0开始
int sum = 0;
for(int i = 0; i < n; i++){
//接收输入的数字填入数组
vec[i] = scanner.nextInt();
//更新从第一位到当前位的区间和
sum +=vec[i];
//保存区间和
vecSum[i] = sum;
}
//判断是否有继续输入,如果有,处理打印逻辑
while(scanner.hasNextInt()){
//需要计算的区间开始下标
int start = scanner.nextInt();
//需要计算的区间结束下标
int end = scanner.nextInt();
//开始计算
int resSum = 0;
if(start==0){
//如果开始下标是0,结果就是从0到结束下表的区间和
resSum = vecSum[end];
}else{
//如果开始不是0,那就需要用0到结束下标区间和减去0到开始下标前一位的区间和
resSum = vecSum[end]-vecSum[start-1];
}
System.out.println(resSum);
}
//关闭输入
scanner.close();
}
}