当前位置:首页 > 编程笔记 > 正文
已解决

2023.11.6 信息学日志

来自网友在路上 170870提问 提问时间:2023-11-07 21:29:52阅读次数: 70

最佳答案 问答题库708位专家为你答疑解惑

1. CF1848C Vika and Price Tags

题目描述

https://www.luogu.com.cn/problem/CF1848C

题目概况

来源:Codeforces

洛谷难度: 绿题 \color{green}绿题 绿题

CF难度: 1800 1800 1800

标签:数论 最大公约数 数对奇偶性

思路点拨

首先原题每次操作使:

  • a i = b i a_i=b_i ai=bi
  • b i = ∣ a i − b i ∣ b_i=|a_i-b_i| bi=aibi
    ( 2 2 2 操作同时进行)
    这个操作本身就是属于九章算术里的更相减损术,最终当 a i = 0 a_i=0 ai=0 时,同理 b i = gcd ⁡ ( a i , b i ) b_i=\gcd(a_i,b_i) bi=gcd(ai,bi),这就证明了对于 ∀ i ∈ [ 1 , n ] \forall i∈[1,n] i[1,n] 均能通过数次操作之后满足 a i = 0 a_i=0 ai=0

a i = 0 a_i=0 ai=0 后,我们会发现一个周期性现象如下

a i a_i ai b i b_i bi0 gcd ⁡ ( a i , b i ) \gcd(a_i,b_i) gcd(ai,bi) gcd ⁡ ( a i , b i ) \gcd(a_i,b_i) gcd(ai,bi) gcd ⁡ ( a i , b i ) \gcd(a_i,b_i) gcd(ai,bi) gcd ⁡ ( a i , b i ) \gcd(a_i,b_i) gcd(ai,bi)00 gcd ⁡ ( a i , b i ) \gcd(a_i,b_i) gcd(ai,bi) gcd ⁡ ( a i , b i ) \gcd(a_i,b_i) gcd(ai,bi) gcd ⁡ ( a i , b i ) \gcd(a_i,b_i) gcd(ai,bi)…………

由此进入长度为 3 3 3 的循环,之后发现当 a i a_i ai b i b_i bi 的奇偶性所组成的数对决定了到底在第 m m o d 3 m \mod 3 mmod3 次出现 a i = 0 a_i=0 ai=0 的情况.
还有 2 2 2 点需要注意

  • a i = b i = 0 a_i=b_i=0 ai=bi=0 满足任意情况
  • a i m o d 2 = b i m o d 2 = 0 a_i \mod 2 =b_i \mod 2 =0 aimod2=bimod2=0 a i 、 b i a_i、b_i aibi 同时除 2 2 2 直到其中一方没有因子 2 2 2

A C AC AC.

题目收获

分类

2. CF1396B Stoned Game

题目描述

https://www.luogu.com.cn/problem/CF1396B

题目概况

来源:Codeforces

洛谷难度: 绿题 \color{green}绿题 绿题

CF难度: 1800 1800 1800

标签:博弈论

思路点拨

每个人取当前(除上一个人取得石子堆)里含有最多石子的那一堆为最优策略,因为这样才能保住大后方撑得时间更久,用 p r i o r i t y priority priority_ q u e u e queue queue 维护一下即可

A C AC AC.

3. CF645D Robot Rapping Results Report

题目描述

https://www.luogu.com.cn/problem/CF645D

题目概况

来源:Codeforces

洛谷难度: 绿题 \color{green}绿题 绿题

CF难度: 1800 1800 1800

标签:拓扑排序

思路点拨

一道很经典的拓扑排序

能否真正严格排机器人的能力,取决于有没有越过一个临界点,显而易见的是,当越过这个临界点后给再多的消息都可以严格排序(因为不可能出现弱的机器人噶掉强的机器人)。总而言之,消息的数量相对于临界点是单调递增的,只需要二分消息的数量。
总结一下步骤如下:

  • 二分消息的数量
  • 拓扑排序判断其是否严格(经过一次找入度为0的点,至多找到一个否则出现2个机器人能力相对并列的情况

A C AC AC.

trick

确定依赖元素之间的数值严格排序 \color{blue}确定依赖元素之间的数值严格排序 确定依赖元素之间的数值严格排序
(去重满足拓扑排序每次加点操作至多添加一个点 ) \color{blue}(去重满足拓扑排序每次加点操作至多添加一个点) (去重满足拓扑排序每次加点操作至多添加一个点)

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"2023.11.6 信息学日志":http://eshow365.cn/6-34764-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!