思维题选记
洛谷 P1146 硬币翻转
首先,有一个关于硬币翻转的性质,就是一个硬币只有翻转奇数次才能反面朝上,这是显然的。这启发我们构造一种能使每个硬币翻转奇数次的方案。
同时,我们发现对完全相同的一组
有了以上两个性质,我们便可以构造如下方案:
第
次翻转除第 枚硬币以外的 枚硬币,其中 。
这样的方案中显然每一枚硬币都被翻转了
NOIP2000 提高组 进制转换
十进制数转负进制,同样可以使用短除取余法,但是会出现余数为负的情况,例如
我们设被除数为
,除数为 ,余数为 ,商为 ,其中 且 。 由除法的定义可知
,所以有 ,由于余数小于被除数,所以有 ,又因为 且 ,所以新的余数 。 所以我们只需要将商加
,余数减除数,即可解决余数为负的情况。
洛谷 P2192 HXY玩卡片
如果一个数能被
- 能被
整除,那就说面答案的个位数一定是 ,如果没有 的话就是无解。 - 能被
整除,那就说明答案的各个位加起来的和能被 整除,由于答案仅有 和 组成,所以只需要判断所有 加起来能否被 整除即可。也就是说,如果有 个 ,那么需要保证 是 的倍数,所以有 。
有了上面的推导,我们便有了解法:
设一共有
个 ,因为要满足 ,所以我们最多只能选 个 。因为要求最大,所以把这些 先输出,最后输出有的所有 。但是有可能没有足够的 ,这样就只能输出 了,当然是在有 的情况下。
NOIP1998 提高组 拼数
- 设
为数字 的字符串形式。 表示字符串 和字符串 相连组成的字符串。
既然要构造最优解,显然如果有不优的情况的话,就需要对序列进行调整,具体而言我们可以这样做:
如果有
,其中 ,那么就交换 和 ,现在 的字典序明显更大了。重复上述操作,直至没有满足上述条件的情况了。
为什么上述做法是对的呢?我们可以考虑用反证法进行证明:
经过上述操作后,设最终序列为
,且序列 满足 ,其中 。我们先假设命题不成立,则序列 不是字典序最大的序列,而 是字典序最大的序列,那么 必然有与 不同的地方,则必然有 ,此时如果交换 和 ,则必然有更大的字典序,与假设矛盾,故命题成立。
洛谷 P9484 「LAOI-1」GCD
命题
命题
考虑先证明命题
首先,可以推导出条件
-
当
为公倍数时,设 , 的长度 为 ,由于 ,所以此时 。而 时, 的长度为 ,显然有 。同理 也是不优的,故这种情况是不优的。 -
当
为公因数时,且 ,此时的总长度 ,所以 ,故这种情况也是不优的。
有了上面的推论,命题
接下来证明命题
设
对于命题
考虑证明
由于
有了命题
洛谷 P2651 添加括号III
为了使最终的结果是一个整数,所以分母要尽可能大,容易发现
所以只需要将每一个
蓝桥杯 2013 省 B 翻硬币
首先可知相邻的两个硬币最多只会翻转一次,否则就没有意义,又因为题目保证了没有无解的情况,所以只要出现一个不同的位置,直接翻转即可,这样一定是最优解。
洛谷 P9586 「MXOI Round 2」游戏
在第一回合,小 C 可以直接出杀或斩干掉小 D,即
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】