摘要: 基础 乱七八糟 程序运行:CPU只负责计算 内存存储变量和常量 CPU的位(32/64)每一位为一个bit(最高位为符号位,1表负数,0表非负数) 语言基础 计算机中的整数表示 int:正负2的31次方 自然溢出:无符号溢出后从头起始 long long(long long int) 64位 sho 阅读全文
posted @ 2019-05-01 10:26 .Terena 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 模拟T3(T2找不到原题) 维护当前枚举到的区间是l到r,通过前缀和计算顺时针距离,如果超过周长的一半,l++,否则r++,同时维护答案。可证这样做不会计算任何重复的区间,且会不断向答案转移,而且时间复杂度是O(n)的 呆马: 阅读全文
posted @ 2019-04-21 17:22 .Terena 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 模拟T1,贪心+排序或者二分都行 贪心策略很好想,显然每次晒耗时最久的衣服最优,问题是要在每次晒完后都再次找到耗时最久的衣服,不能每次都sort,所以单调队列或者大根堆 二分也不难,直接二分时间,筛一遍衣服统计需要烘干的时间然后判断是否满足就行 模拟的时候敲了贪心+排序,所以这里放二分的代码(滑稽) 阅读全文
posted @ 2019-04-21 17:06 .Terena 阅读(169) 评论(0) 推荐(0) 编辑
摘要: dij板子的灵活运用 在一个有向图中求:1.1号点到剩下所有点的最短路 2.剩下所有点到一号点的最短路 1相信谁都会,存有向图跑一遍 2是这道题的精髓,应用一个比较有价值的思想:在有向图中跑反向边,相当于求出所有点到一号点的最短路 所以简单说就是存两个版本的图然后两遍dij板子 阅读全文
posted @ 2019-04-20 20:30 .Terena 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 最短路的蒻弱化版,借着练了一遍dij堆优化的板子,放一个dij的标程在这吧。(真心感觉dij比某个已死算法敲着简单) 堆优化部分: 核心程序 完整代码(规定起止点的dij) 阅读全文
posted @ 2019-04-20 19:46 .Terena 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 当年的一道D2T1,一眼看上去很简单的样子,但是实际做起来没那么容易。 看一眼数据范围,很好可以考虑搜索,首先想到的是搜什么。 如果从矩形开始搜,虽然至多只有4个矩形,但是可以有很多很多很多种的组合。因为一个矩形要么由对角线上顶点确定,要么由一个顶点与不包含该顶点的两边上的各一点确定,这样搜索会有2 阅读全文
posted @ 2019-04-19 22:09 .Terena 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 看到很久的一道题,敲起来略麻烦一直咕到现在。 解法很水深搜+回溯就行 每次枚举所有单词判断是否出现过两次以上,是否能接上,接上长度是多少,是否重叠就可以,当没有能接上的单词表示已搜完维护答案最大值即可。 阅读全文
posted @ 2019-04-18 22:22 .Terena 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 火焰之地传送门 凭心而论这题挺水的,一道计算几何加工的最短路。 用前面墙的个数*4+当前墙上的序号表示点的序号,对于每个点(包括起点和终点),枚举其后面墙上的所有点一一判断是否可与之相连,能相连就连边,最后跑一遍Floyd。 判断直接用数学公式做一次函数就行。 呆马: 阅读全文
posted @ 2019-04-16 21:45 .Terena 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 稍微改了一点的01背包,选择的顺序会影响物品的价值,数学公式推一下可以得出cmp函数: 排序后跑一遍01就行 阅读全文
posted @ 2019-04-16 11:05 .Terena 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 月光林地传送门 最近打算刷刷NOIP原题,这是第一道,贪心+模拟(+递归),优先队列也能做。 贪心思路炒鸡简洁: 对于当前所处的加油站,枚举统计出所有可以抵达的加油站,记录油价最低值。若最低值小于当前加油站油价,则在当前加油站加上正好可以到达那个加油站的油。若最低值大于当前加油站油价,判断能否从当前 阅读全文
posted @ 2019-04-13 21:54 .Terena 阅读(227) 评论(0) 推荐(0) 编辑