2019牛客暑期多校训练营(第三场)

本文深入探讨了多项竞赛编程题目,包括图论、字符串处理、数据结构与算法优化等核心内容,分享了解题思路与实战经验,强调了快速阅读、正确使用数据结构和算法的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RankSolvedABCDEFGHIJ
44/8015/10ØO.Ø.OOOØO

O: 当场通过

Ø: 赛后通过

.: 尚未通过

A Graph Games

upsolved by chelly


chelly’s solution

为每一个点rand一个权值,那么S(x)S(x)S(x)我们就用和xxx相邻的点的权值异或值表示。
对边序列进行分块,维护每个块对每个点的影响即可。每个操作可以被做到O(m)O(\sqrt m)O(m)

B Crazy Binary String

solved by viscaria


viscaria’s solution

C Guessing ETT

unsolved


D Big Integer

upsolved by Feynman1999


Feynman1999’s solution

E Trees in the Pocket II

unsolved


F Planting Trees

solved by chelly


chelly’s solution

枚举矩形的左右边界,对于上下边界直接单调队列+尺取去做就可以了。

被疯狂卡常TvT

G Removing Stones

solved by viscaria&chelly


chelly’s solution

首先问题等价于,计算有多少个区间[l,r][l,r][l,r]满足2maxl,r≤sumi,j2max_{l,r} \leq sum_{i,j}2maxl,rsumi,j
然后我们可以从小到大枚举数字往里填,并查集合并。每次枚举小的那一段的每个位置,在大的那一段二分。
对于每个位置,其复杂度是log1+log2+log4+log8+...+logn=log2nlog1+log2+log4+log8+...+logn=log^2nlog1+log2+log4+log8+...+logn=log2n
所以总的时间复杂度是O(nlog2n)O(nlog^2n)O(nlog2n),竟然能过……

H Magic Line

solved by viscaria


viscaria‘s solution

I Median

upsolved by chelly


chelly’s solution

容易发现一个结论,原序列aia_iai的取值在{bi−1,bi,bi+1}\{ b_{i-1},b_i,b_{i+1}\}{bi1,bi,bi+1}之间。
后面就是简单的dpdpdp了。

J LRU management

solved by vegetablest


vegetablest’s solution

用list和unorderd_map进行模拟,unorderd_map里存list的迭代器
需要正确的快读姿势!!

Dirty Replay

  • F题最先WA了一发,是单调队列出队的时候t弄错了。后来TLE了若干发……被卡常了……
  • G题WA了一发,算贡献的时候最大值乘错了
  • J题WA和TLE交织若干发……要用快读+unordered_map,需要正确的快读姿势……
  • A题要会正确的rand()姿势,推荐用mt19937
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值