每次预案都基于原始库存,且只需判断总和奇偶,不必真正改写数组。
先求原始总和 S,并用前缀和得到任意区间 [l,r] 的原库存和。区间长度 m=r−l+1。改写后该区间中 k 出现 ⌈m/2⌉ 次,k+1 出现 ⌊m/2⌋ 次,新区间和为
⌈m/2⌉⋅k+⌊m/2⌋⋅(k+1).货架上从左到右摆放着 n 件货物,第 i 件的库存量为 ai。有 q 次相互独立的预案,每次给出区间 [l,r] 与整数 k。
在该预案中,把下标 l 到 r 的库存改写成交替序列:对所有 j∈[l,r],若 j−l 为偶数,则令库存为 k;若 j−l 为奇数,则令库存为 k+1。其余位置保持原值。
所有预案均基于原始库存独立判断。请回答改写后整排货物库存之和是否为奇数。
约束:测试组数不超过 10^4,单组 n 与 q 均不超过 2×10^5,库存量不超过 10^9,且单个测试文件中 n 之和、q 之和均不超过 2×10^5。
开通会员即可查看完整视频题解: 1.题目讲解 2.思路分析 3.逐行代码手写
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册