前缀和,蓝桥 国赛2023 抓娃娃

一、题目

1、题目描述

2、输入输出

2.1输入
2.2输出

3、原题链接

0抓娃娃 - 蓝桥云课 (lanqiao.cn)


二、解题报告

1、思路分析

考虑每个线段如果被框住一半,那么其中点一定在区间内

所以我们前缀和前缀区间中点的数目

但是如果直接求中点(l + r) / 2会有精度问题,我们将1, n 映射到 n + 1, n就能避免精度问题

那么每次查询L, R内的中点数目就等价于查询L \* 2 - 1, R \* 2内的中点数目

2、复杂度

时间复杂度: O(n)空间复杂度:O(n)

3、代码详解

复制代码
cpp 复制代码
#include <bits/stdc++.h>
using i64 = long long;
const int N = 2e6 + 10;

void solve() {
    int n, m;
    std::cin >> n >> m;
    std::vector<int> pre(N);
    for (int i = 0, l, r; i < n; i ++ )
        std::cin >> l >> r, ++ pre[l + r];
    for (int i = 1, ed = pre.size(); i < ed; i ++ )
        pre[i] += pre[i - 1];
    for (int i = 0, l, r; i < m; i ++ ) {
        std::cin >> l >> r;
        std::cout << pre[r << 1] - pre[(l << 1) - 1] << '\n';
    }
}

int main () {
    std::ios::sync_with_stdio(false), std::cin.tie(0), std::cout.tie(0);
    int _ = 1;
    // std::cin >> _;
    while (_ --)
        solve();
    return 0;
}
相关推荐
leihefeng28 分钟前
手写数字识别:KNN vs 逻辑回归实战
python·算法·机器学习·逻辑回归·scikit-learn
全栈技术负责人1 小时前
DeepSeek Harness 业务工具权限插件 dsh-tool-permission设计思路
网络·算法·ai·ai编程
mmmmath_31 小时前
面试题 02.07. 链表相交
算法·链表
residual_fan2 小时前
特征级SMOTE(Feature-level SMOTE)论文分享
人工智能·算法·数据挖掘·数据分析
xxwxx__2 小时前
深入理解 C++ STL:stack、queue 与 deque 从使用到底层实现全解析
开发语言·c++·算法
sylviiiiiia2 小时前
Leetcode hot100 多数元素/相交链表/反转链表
算法·leetcode·链表
CoderYanger2 小时前
A.每日一题:3622. 判断整除性
java·程序人生·算法·leetcode·面试·职场和发展·蓝桥杯
rannn_1112 小时前
【力扣hot100】动态规划专题|70、118、198、279、322、139、300、152、416、32
算法·leetcode·动态规划
渡之2 小时前
ArduPilot(APM)滤波器之 HarmonicNotchFilter 深度解析
算法·无人机
我不会起名字3222 小时前
一天一道算法题(26):栈的简单应用
java·数据结构·python·算法·leetcode·golang·