前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Public NOIP Round

Public NOIP Round

作者头像
yzxoi
发布2024-02-02 20:46:33
1480
发布2024-02-02 20:46:33
举报
文章被收录于专栏:OIOI

Public NOIP Round

A

经过一定分析可以发现合法数很少,写个爆搜+剪枝把所有答案先跑出来,查询二分即可。

O(?X+Q\log X)

56740

B

很容易设出一个简单的 DP,设 f_{i} 表示当前子序列结尾为 a_i,且保证最终一定含 a_i,长度最大值。

g_{i,j} = \min { j> i \land a_j > a_i}

有转移:

f_j \leftarrow f_i + 1

其中,

其中 a_j>a_ia_i 从小到大枚举即可。

线段树辅助转移。

特别注意,初始合法的点仅为 [1,g_1]

O(n\log n)

56884

C

每个连通块独立,分别考虑。

根据提示,容易想到按图是否为二分图分类。

若该连通块为二分图,将该图黑白染色,两图的左黑+右白、右黑+左白数量相等,容易证明这是充要的。

若该连通块不为二分图,即其必含奇环,注意到变换之和为偶数,故黑、白点奇偶性相同,且权值集合相同,容易证明这是充要的。

56887

D

只需要考虑 1\times x+ 5\times y 即可。

贪心地想,容易发现每次只会选一个物品。

综合上述,一个代价为 a_i 的物品价值为 5\lceil \frac {a_i}5\rceil-a_i,其新代价为 \lceil \frac {a_i} 5\rceil,而总新容量为 \lfloor \frac m5\rfloor,初始答案为 m\bmod 5

注意到价值很小,可以将价值放到状态里,设 f_{i,j} 表示考虑所有代价 \leq i 的物品,获得价值为 j,所需要的最小代价。

显然其满足决策单调性,将所有代价为 i 的物品抽出来排序求前缀和,转移即可。

O(n\log n)

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-10-21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Public NOIP Round
    • A
      • B
        • C
          • D
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档