摘要:
讲讲我的做法 分析题意 如果两人的面积一样大怎么办? 然后发现 输出仅一行一个字符串,若正方形面积大则输出 Alice,否则输出 Bob。 所以一样输$Bob$ 算面积 $Alice$的面积就是:\(a^{2}\) $Bob$的面积就是:\(b*c\) 所以就有了代码 long long Alice 阅读全文
摘要:
这是本人的第一篇题解 请多多宽恕 这一道题其实不要用数组 我们来观察一下n=3时的情况: 原: 1 2 3 4 5 6 4 1 5 2 6 3 2 4 6 1 3 5 1 2 3 4 5 6 我们去观察2的位置 第一次的位置:2 第二次的位置:4 第三次的位置:1 因为2是前半堆牌,所以可以直接乘2 阅读全文
摘要:
正文 简单描述一下题意: 士兵想要过河,他每一次可以往下走一格,也可以往右走一格,但马一步走到的地方是不能走的,问走到$n$行,$m$列有多少种走法 我们显然应该先根据马的位置将不能走的格子做一下标记 于是,就会写下这段代码: void work(long long x,long long y){ 阅读全文
摘要:
好像没有人搞$\color{green}map$反映,没有人用$\color{green}map$反映搞并查集! $\color{green}map$第一个好处是作为一个数组,可以开很大! 我自认为$\color{green}map$是一个特别好的东西,如果你的数组要开很大,但会爆炸,就最好用$\c 阅读全文
摘要:
讲讲我的做法 看了题目发现要用区间$dp$,为什么? 我们发现区间$dp$有一个性质——大区间包涵小区间,这道题就符合这样的一个性质 所以我们要用区间$dp$来解决这道题。 如何设计状态 那么我们要怎么设计状态,我们想,每给人进入队伍里,只有2种可能,1种是从左边加入,另外1种是从右边进入,所以我们 阅读全文
摘要:
前言 其实这道题的关键就是在于预处理,其方法类似于 合唱队形 正文 求最大子段和 要想求出双子序列最大和,首先我们要会求出最大子段和 最大子段和的求值方法很简单 定义 \(f_i\) 为以第 \(i\) 个数结尾的最大子段和 #include <bits/stdc++.h> using namesp 阅读全文
摘要:
讲讲我的做法 刚开始做这道题的时候,看到$n<=15$,我这个$6$年级的蒟蒻的第1反应是状压$dp$。貌似不好做。然而,等到我在省中集训的时候,老师的一席话,让我豁然开朗。今天我准备来分享一下。 老师的话是:除了第1行,其他格子要不要翻是由上一行决定的。 听到这里,我想应该跟那时的我一样——豁然开 阅读全文
摘要:
前言 首先,看到这道题目,我首先想到的是暴搜,通过$vector$来搞,代码也是很短的。 这里用了一个类似于分治的思想 把一个大问题转化为小问题 先枚举第一个单词,之后把能拼接在它后面的单词都一个一个的去试,哪个最优选哪个 #include <bits/stdc++.h> using namespa 阅读全文
摘要:
前言 $ZHK$私人博客体验更佳 这道题目,\(n<=10^5\),显然在暗示我们使用$n \log n$的做法,我就是用了一个简单的贪心,通过了此题。 正文 在这道题中,我们发现,可以把 \(Bessie\) 每次走的路看成是对序列的一段区间染色。 for(int i=1;i<=n;i++){ i 阅读全文
摘要:
讲讲我的做法 题目大意:对一个字符串进行折叠是它长度最小 看一眼数据范围:哇!字符串长度不超过100!这是一道省选题,不可能给你太宽裕的时限,所以,题目基本暗示你要用$n^{3}$多一些的算法复杂度。 这是一道最优化的题目,常见求最优化问题的算法比如贪心,模拟,枚举我都想不出什么好办法,唯独觉得像一 阅读全文