摘要: 题目链接 https://codeforces.com/contest/2051/problem/G 思路 首先一个最简单的思路就是枚举排列,然后求相邻两条蛇最小要分配多少距离,最后取最小就行。 然后相邻两条蛇的最小距离可以预处理求能降低一部分复杂度,因为就\(n^2\)个状态。 相邻两条蛇最小距离 阅读全文
posted @ 2025-06-13 16:10 cbbdhz 阅读(5) 评论(0) 推荐(1)
摘要: 题目链接 https://codeforces.com/contest/2053/problem/E 思路 首先肯定要确定先怎么才能让\(Aron\)赢,分成两种情况。 一种是\(Aron\)在叶子上了,并且\(Nora\)不在叶子上直接就赢了。 另一种是先\(Nora\)走一步,并且这一步无论怎么 阅读全文
posted @ 2025-06-12 21:09 cbbdhz 阅读(2) 评论(0) 推荐(1)
摘要: 题目链接 https://codeforces.com/contest/2043/problem/E 思路 首先这个能拆位搞非常显然,因为位运算可以对每一位进行操作,然后每位处理的话就是相当于转化成01矩阵。 只要每位的01矩阵都能通过给的两个操作转化,则输出\(YES\),否则输出\(NO\)。 阅读全文
posted @ 2025-06-10 22:30 cbbdhz 阅读(4) 评论(0) 推荐(1)
摘要: 题目链接: https://codeforces.com/contest/2060/problem/G 思路: 1.一个最简单的观察就是\(a[i]\)和\(b[i]\)上的两个值是绑死的,两个值最多上下颠倒或者到别的位置上。 但这两个值一定在同一个i位置上。 2.一次交换操作肯定会导致\(2\)次 阅读全文
posted @ 2025-06-06 22:14 cbbdhz 阅读(5) 评论(0) 推荐(1)
摘要: 题目链接: https://codeforces.com/contest/2114/problem/G 思路: 首先观察的重要的一个性质就是一个数最少需要一次,最多则与他能被\(2\)整除多少次有关。 比方说一个数可以分解成\(2^n*x\)的形式,那这个就可以一直放\(x\)实现最多的\(2^n\ 阅读全文
posted @ 2025-06-01 20:18 cbbdhz 阅读(6) 评论(0) 推荐(1)
摘要: 题目链接: https://codeforces.com/contest/2102/problem/E 思路: 1.首先我要让每个值的贡献最大,我就必须要让它出现的位置尽量靠近数组的两端,这样的距离最远,贡献最大。 2.然后因为每个位置的数值能填的值是有上限的,我用\(1,2,3,4\)这样的数来构 阅读全文
posted @ 2025-05-31 13:34 cbbdhz 阅读(12) 评论(0) 推荐(1)