当前位置: 首页 > news >正文

2024年信奥赛C++提高组csp-s初赛真题及答案解析(完善程序第1题)

2024年信奥赛C++提高组csp-s初赛真题及答案解析(完善程序第1题)

第 1 题

(序列合并)有两个长度为 N的单调不降序列 A和 B,序列的每个元素都是小于10 9 10^9109的非负整数。在 A和 B中各取一个数相加可以得到 N2 ^22个和,求其中第 K小的和。上述参数满足 N≤10 5 10^5105和 1≤K≤N 2 N^2N2

#include<iostream>usingnamespacestd;constintmaxn=100005;intn;longlongk;inta[maxn],b[maxn];int*upper_bound(int*a,int*an,intai){intl=0,r=___①___;while(l<r){intmid=(l+r)>>1;if(___②___){r=mid;}else{l=mid+1;}}return___③___;}longlongget_rank(intsum){longlongrank=0;for(inti=0;i<n;++i){rank+=upper_bound(b,b+n,sum-a[i])-b;}returnrank;}intsolve(){intl=0,r=___④___;while(l<r){intmid=((longlong)l+r)>>1;if(___⑤___){l=mid+1;}else{r=mid;}}returnl;}intmain(){cin>>n>>k;for(inti=0;i<n;++i)cin>>a[i];for(inti=0;i<n;++i)cin>>b[i];cout<<solve()<<endl;}
  1. ① 处应填( )?
    A.an-a
    B.an-a-1
    C.ai
    D.ai+1
  2. ② 处应填( )?
    A.a[mid] > ai
    B.a[mid] >= ai
    C.a[mid] < ai
    D.a[mid] <= ai
  3. ③ 处应填( )?
    A.a+l
    B.a+l+1
    C.a+l-1
    D.an-l
  4. ④ 处应填( )?
    A.a[n-1]+b[n-1]
    B.a[n]+b[n]
    C.2 * maxn
    D.maxn
  5. ⑤ 处应填( )?
    A.get_rank(mid) < k
    B.get_rank(mid) <= k
    C.get_rank(mid) > k
    D.get_rank(mid) >= k
题解:

本题要求从两个长度为 (N) 的单调不降序列 (A) 和 (B) 中各取一个数相加,得到 (N2 ^22) 个和,求第 (K) 小的和。解题思路是利用二分答案,统计有多少个和不超过给定的值 (sum),然后通过二分找到最小的 (sum) 使得不超过它的和的数量至少为 (K)。

  • :在upper_bound函数中,需要确定二分查找的右边界,即数组的长度。由于参数aan分别指向数组起始和结束的下一个位置,因此长度应为an - a选A
  • upper_bound函数的目标是找到第一个大于ai的元素,因此在二分过程中,当a[mid] > ai时,应将右边界移动到mid,否则左边界移动到mid + 1选A
  • :二分查找结束后,左边界l即为第一个大于ai的元素的索引,因此返回指针a + l选A
  • :二分答案的右边界应设为可能的最大和,即 (a[N-1] + b[N-1])。选A
  • :在二分答案过程中,若get_rank(mid)(即不超过mid的和的数量)小于 (K),说明mid太小,需要增大左边界;否则减小右边界。因此条件为get_rank(mid) < k选A

专栏推荐:信奥赛C++提高组csp-s初赛&复赛真题题解(持续更新)
https://blog.csdn.net/weixin_66461496/category_13125089.html


各种学习资料,助力大家一站式学习和提升!!!

#include<bits/stdc++.h>usingnamespacestd;intmain(){cout<<"########## 一站式掌握信奥赛知识! ##########";cout<<"############# 冲刺信奥赛拿奖! #############";cout<<"###### 课程购买后永久学习,不受限制! ######";return0;}

1、csp信奥赛高频考点知识详解及案例实践:

CSP信奥赛C++动态规划:
https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转

CSP信奥赛C++标准模板库STL:
https://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转

信奥赛C++提高组csp-s知识详解及案例实践:
https://blog.csdn.net/weixin_66461496/category_13113932.html

2、csp信奥赛冲刺一等奖有效刷题题解:

CSP信奥赛C++初赛及复赛高频考点真题解析(持续更新):https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转

CSP信奥赛C++一等奖通关刷题题单及题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转

3、GESP C++考级真题题解:

GESP(C++ 一级+二级+三级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转

GESP(C++ 四级+五级+六级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转


GESP(C++ 七级+八级)真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13117178.html

4、CSP信奥赛C++竞赛拿奖视频课:

https://edu.csdn.net/course/detail/40437 点击跳转

· 文末祝福 ·

#include<bits/stdc++.h>usingnamespacestd;intmain(){cout<<"跟着王老师一起学习信奥赛C++";cout<<" 成就更好的自己! ";cout<<" csp信奥赛一等奖属于你! ";return0;}
http://www.jsqmd.com/news/353592/

相关文章:

  • 数字图像处理篇---CMYK颜色空间
  • 超越准确性:构建鲁棒机器学习系统的算法实现与工程实践
  • NB-IoT模组省电机制深度解析:PSM、eDRX与DRX状态切换策略及应用场景
  • STM32与MPU6050驱动的两轮自平衡小车:从硬件搭建到PID调参实战
  • FreeRTOS软件定时器:周期与单次触发实战指南
  • C语言对话-30.It‘s an Object-ful Lifetime
  • CosyVoice Instruct 实战:如何高效构建语音指令处理系统
  • GPT-4.1与GPT-4o模型解析:如何选择最适合你项目的Copilot引擎
  • FreeRTOS互斥量原理与优先级继承机制详解
  • ChainMap 实战指南:构建优雅的多层配置系统
  • 基于Conda高效部署FunASR语音识别系统的实战指南
  • 为什么92%的量子算法工程师还在裸跑Qiskit?Docker 27量子节点容器化部署——7大不可绕过的核心配置与3个反模式警告
  • FreeRTOS队列机制原理与嵌入式任务通信实战
  • ChatGPT App SDK 入门指南:从零构建你的第一个 AI 应用
  • 百度智能云客服AI辅助开发实战:从对话管理到意图识别的全链路优化
  • FreeRTOS队列原理与工程实践:嵌入式多任务通信核心
  • RAG企业智能客服从零搭建指南:核心架构与避坑实践
  • ChatTTS Stream 在AI辅助开发中的实战应用与性能优化
  • OLED代码演示-使用缓存区 - 指南
  • Docker 27镜像签名与验证终极方案:从cosign签发到自动门禁拦截的6分钟自动化流水线
  • Matlab学习记录43
  • 强!FPGA + 双AD9288,DIY高性能便携示波器全攻略
  • GME多模态向量-Qwen2-VL-2B:开箱即用的多模态搜索解决方案
  • Swift 6.2 列传(第四篇):enumerated () 的 “集合神功” - 指南
  • Docker 27镜像仓库凭据泄露风暴:2024上半年真实泄露事件复盘,教你用Vault动态令牌替代硬编码token
  • 车联网毕设入门实战:从零搭建一个高可用的车辆数据上报系统
  • GPT-5.3-Codex是什么?一文看懂OpenAI新一代AI编程智能体
  • 【有啥问啥】智能座舱CPD技术:毫米波雷达如何守护儿童安全?
  • 从零配置到零延迟:configuration: latency=0 实战指南
  • ChatTTS环境配置实战:从零搭建高可用AI辅助开发环境