2026年最新历年信息素养大赛C++复赛题目及解析.docxVIP

  • 2
  • 0
  • 约5.97千字
  • 约 11页
  • 2026-10-20 发布于广西
  • 举报

2026年最新历年信息素养大赛C++复赛题目及解析.docx

2026年最新历年信息素养大赛C++复赛题目及解析

某中学信息素养社团图书角共有n类图书,编号从1到n,每类图书初始存量为a[i]本。接下来连续m天对所有类别的图书产生借阅需求,针对第i类图书共有t_i条需求记录,每条记录格式为三个整数l,r,x,表示在第l天到第r天(包含首尾两天),每天新增x名同学借阅该类图书1本,同一时间范围内的需求可叠加。借阅规则为:每天开馆时所有图书全部在架(前一天借出的图书全部在闭馆后归还),当天借阅按照累计需求发放,若当日需求小于等于存量,则所有需求都被满足;若当日需求超过存量,则最多借出存量数的图书,超出部分的需求直接作废。请计算m天结束后,每类图书累计被借出的总册数。输入格式:第一行两个正整数n,m,分别表示图书类别数和统计天数。第二行n个正整数a[i],表示第i类图书的初始存量。接下来分n组输入,每组第一行一个整数t_i,表示第i类图书的需求记录数,接下来t_i行每行三个整数l,r,x,代表一条区间需求记录。数据范围:n≤1e5,m≤1e5,所有t_i之和≤2e5,a[i]≤1e9,x≥1,1≤l≤r≤m。

本题是2025年复赛第一道题,定位基础算法应用,全省平均得分42分,大部分选手出现超时或者数据类型溢出问题。首先最容易想到的暴力思路是对每类图书开一个差分数组,通过差分计算出每天的实际借阅需求d[j],再遍历m天累加min(a[i],d[j]

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档