info: { blogIcon: 'https://cdn.luogu.com.cn/upload/usericon/765493.png', blogUser: 'OIerBoy', blogAvatar: 'https://cdn.luogu.com.cn/upload/usericon/765493.png', blogStartDate: '2023-04-22', webpageTitleOnblur: '(o?v?)ノ Hi', webpageTitleOnblurTimeOut: 1000, webpageTitleFocus: '(*′?`*) 欢迎回来!', webpageTitleFocusTimeOut: 1000, webpageIcon: "https://cdn.jsdelivr.net/gh/BNDong/Cnblogs-Theme-SimpleMemory@master/img/webp/blog_logo.webp", { enable: true, // 是否开启日/夜间模式切换按钮 auto: { // 自动切换相关配置 enable: false, // 开启自动切换 dayHour: 5, // 日间模式开始时间,整数型,24小时制 nightHour: 19 // 夜间模式开始时间,整数型,24小时制 } } },

[ABC146E] Rem of Sum is Num

2023-02-27

题目

题目传送门

翻译

翻译

难度&重要性(1~10):4

题目来源

AtCoder

题目算法

数学

解题思路

先对整个序列求前缀和 \(sum_k=\sum_{i=1}^{k}a_i\)
题目求有多少对 \((l,r)\) 满足 \(sum_r-sum_l\equiv r-l \mod k\)
移项得 \(sum_r-r\equiv sum_l-l \mod k\)
那么使用一个 \(mp\) 存储 \(sum_l-l\) 的差,枚举右端点求和即可。
(\(mp[0]\) 要赋初值为 \(1\))

完成状态

已完成

posted @ 2023-05-01 15:33  OIerBoy  阅读(37)  评论(0)    收藏  举报