【Java每日一题,前缀和】csp202203-2 出行计划

简介: 【Java每日一题,前缀和】csp202203-2 出行计划

Introduction


Input

Output

输出共 m 行,每行一个整数,表示对应查询的答案。

Sample

input

6 2 10
5 24
10 24
11 24
34 24
35 24
35 48
1
2

output

3
3

Solution

package csp;
import java.util.Scanner;
public class Main20220302 {
    public static void main(String[] args) {
        Scanner s=new Scanner(System.in);
        int n=s.nextInt();int m=s.nextInt();int k=s.nextInt();
        int[] arr=new int[400005];
        for(int i=0;i<n;i++){
            int x=s.nextInt();int y=s.nextInt();
            if(x-y+1<=1){
                arr[1]+=1;
            }else {
                arr[x-y+1]+=1;
            }
            arr[x+1]-=1;
        }
        for(int i=1;i<400005;i++){
            arr[i]=arr[i]+arr[i-1];
        }
        while (m--!=0){
            System.out.println(arr[s.nextInt()+k]);
        }
    }
}

Experience

第一次使用按照非常常规的思路流程得了70分,然后显示超时,其实判断的过程都很清楚了,无非就是出现了重复判断的情况。

做csp第二题的,确实要想清楚了再写代码,有时候往往思路觉得是没问题的,换一个个小小的角度结果完全不同,这个小小的角度也可能是更容易理解的,也更容易正确。

这道题,体验到csp做第二题的经验。要得到100分的话。


相关文章
|
机器学习/深度学习 Java
【Java每日一题,前缀和】天上的星星
【Java每日一题,前缀和】天上的星星
|
算法 Go Python
CSP 202203-2 出行计划 python 差分算法
CSP 202203-2 出行计划 python 差分算法
CSP 202203-2 出行计划 python 差分算法
|
算法 Go C++
CSP 202203-2 出行计划
CSP 202203-2 出行计划
389 0
CSP 202203-2 出行计划
|
Java 测试技术
poj3061尺取法/前缀和 二分(java)
今天遇到这题因为以前没见到过,当时就是想着应该有着一个很简单的方法可以过但是奈何就是没思路。后来看了别人思路写了下来。学习了尺取法
93 0
|
人工智能 算法 Java
多解法综合题:「动态规划」&「前缀和 二分」&「双指针」| Java 刷题打卡
多解法综合题:「动态规划」&「前缀和 二分」&「双指针」| Java 刷题打卡
|
Java 索引 Python
啥是前缀和呀?图解前缀和(含模板)| Java 刷题打卡
啥是前缀和呀?图解前缀和(含模板)| Java 刷题打卡
下次如何在 30 秒内做出来?二维前缀和模板如何记忆 | Java 刷题打卡
下次如何在 30 秒内做出来?二维前缀和模板如何记忆 | Java 刷题打卡
综合笔试题:一道结合了「Top K + 前缀和」的数学题|Java 刷题打卡
综合笔试题:一道结合了「Top K + 前缀和」的数学题|Java 刷题打卡
前缀和求解「任意子数组和的绝对值的最大值」问题|Java 刷题打卡
前缀和求解「任意子数组和的绝对值的最大值」问题|Java 刷题打卡
经典「前缀和」应用题,以及两大空间优化点|Java 刷题打卡
经典「前缀和」应用题,以及两大空间优化点|Java 刷题打卡