一句话题解(rating : 1500)
竖着的管在排列中永远不会出现,因为无法连接上一列或无法连通下一列;
横着的管道可以直达下一列,弯曲的管不能直达下一列,但是可以直达另一行;
再加最后一行加几个特判即可。
题意:最小交换步数,使得两个字符串相等。每次交换分别选择两个字符串中的字符,输出过程。
a的总个数和b的总个数都是偶数,才会有解;
不同的情况有(a, b) 和 (b, a)两种:
如果每种情况内部交换,只需要一步;
如果两个情况交换,需要两步。
我们先内部完成交换,交换完最多需要一次外部交换,即是最小步骤。
细节证明:
减去原本相同情况下的a, b(都为偶数个),剩余的a,b都是偶数,这就保证了有解。
剩余a,b的数量相同,且总共不一样的情况数量就等于a的数量(也等于b的数量),是个偶数,所以外部交换最多进行一次。
题意:每次操作可以将一个数
数据范围
枚举最后出现k次的数是多少,范围
二分找到第一个能到达最终答案的数,以此向后找k个;
每个数最多除
将
1,2,3的妙用
1 ^ 2 = 3, 1 ^ 3 = 2, 2 ^ 3 = 1,任意两者的异或等于第三者,
三者的异或值等于0,1 ^ 2 ^ 3 = 0;
本题要判断三个字符串中的**每一位是否全都相同或者全都不同**,可以枚举前两个然后二分判断第三个是否存在,且有多少。用1,2,3代替'S'如,'E','T'三个字母,如果前两个位
将数组a按一定顺序排好,求最小值x使得数组a 中每个数经过操作(a_i + x) mod m等于b_i。
枚举:总有一个数a_i操作后作为b[1],枚举这个第一个数得到的最小x,然后check该种情况是否存在即可
有相同字母的字符串分为一组,且如果
并查集。维护一个数组,
思维简化:考虑移动0
数组pos维护每个‘0’出现的位置,每个位置的‘0’最多跨越
一开始就将0位置的数都改为1,遍历
最后再利用
只能说jiangly真的厉害!
有点动态规划的意思,好题,真的是好题!明早写题解
贪心
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!