欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
T1:
前缀和+二分
T2:
排序+二分
T3:
题目:第i天堆一堆vi升的雪,这堆雪每天会融化ti升。
问每天共融化多少雪。
每堆雪在没融化时有两种情况:
1)在今天融不完
2)在今天融完
对于融化量t求一个前缀和
第i堆雪,假设在第j天融化。则pre[j]-pre[i-1]>=v[i]
在pre上二分pre[i-1]+v[i],求出j
这堆雪分成两部分,第一部分是在当天融不完的,即第i天到第j-1天。这些天 每天的融雪量+v[i],和差分一样,于是用差分数组存下。
零头开一个数组存下来。
差分数组求前缀和,加上零头数组就是每天的融雪量。
T4:
题目:网格图下方被堵住,被堵住的高度由a[i]数组存储
机器人每次必须走k步,可以上下左右走。要从起点走到终点,
不能碰被堵住的,不能出边界。问机器人能否走到终点?
分析:若横向差和纵向差有一个不是k的倍数,则NO
机器人无论怎么走,都要穿过ys,yf。所以机器人应走的
尽可能的高(只求是否能到),看机器人一次必须向上k步的情况下
他能到多高,再看ys,yf之间的最大值是否大于这个高度。
大于NO,小于YES
求ys,yf之间的最大值,用ST表解决。
T5:
题目:给定一个正整数序列,求最长同余连续子序列。(同余的那个数>=2)
分析:若两数同余于m,则两数之差%m==0
做法: 1.求相邻数的差
2.求区间GCD
3.求最长的区间GCD>=2的区间(双指针)
T6:
题目:给一堆区间,取出一些区间来,使每一个区间都存在一个另一个区间和它有交集。
分析:区间(l1,r1) (l2,r2)没有交集,只有在:r2<l1或r1<l2时。
求至少删多少区间,就是求最多保留多少个区间。
做法:
选取每一个区间作为起始区间,在剩余区间中找出所有和它有交集的区间(最大化选取的区间数量)
由分析,为了快速的找到这些和他有交集的区间(等价于找到所有和他没有交集的区间),可以将所有左端点和所有右端点排序}
利用分析中的结论,求出没有交集的所有区间。
0 条评论
目前还没有评论...
Be the first to comment!