04 2018 档案

摘要:题意非常难理解……#include#define REP(i, a, b) for(int i = (a); i k : g[a].w; int vb = b k : g[b].w; g[i].w = !(va && vb); } return g[m].w;... 阅读全文
posted @ 2018-04-30 20:11 Sugewud 阅读(127) 评论(0) 推荐(0) 编辑
摘要:这道题发现一个性质就解决了如果以i为起点, 然后一直加油耗油, 到p这个地方要去p+1的时候没油了, 那么i, i+1, ……一直到p, 如果以这些点为起点, 肯定也走不完。为什么呢?用反证法, 假设以q(i #define REP(i, a, b) for(int... 阅读全文
posted @ 2018-04-30 17:56 Sugewud 阅读(145) 评论(0) 推荐(0) 编辑
摘要:紫书上有很明显的笔误, 公式写错了。g(k, i)的那个公式应该加上c(k-1)而不是c(k)。如果加上c(k-1)那就是这一次所有的红气球的数目, 肯定大于最下面i行的红气球数我用的是f的公式, 我觉得这个稍微比f好理解一点。f(k, i) 表示k小时之后最上面i行... 阅读全文
posted @ 2018-04-30 16:55 Sugewud 阅读(144) 评论(0) 推荐(0) 编辑
摘要:解法和合并果子是一样的, 每次取最小的两个, 更新答案, 加入队列#include#include#define REP(i, a, b) for(int i = (a); i , greater > q; REP(i, 0, n) scanf("%d", &x),... 阅读全文
posted @ 2018-04-30 16:11 Sugewud 阅读(101) 评论(0) 推荐(0) 编辑
摘要:这道题让最大值最小, 显然是二分答案当题目求的是最大值最小, 最小值最大, 这个时候就要想到二分答案为什么可以二分答案呢, 因为这个时候解是单调性的, 如果简单粗暴一点就全部枚举一遍, 验证答案。但是因为答案满足单调性, 可以用二分的方法来”枚举“, 复杂度可以从n降... 阅读全文
posted @ 2018-04-30 15:46 Sugewud 阅读(140) 评论(0) 推荐(0) 编辑
摘要:这道题用了数形结合, 真的牛逼, 完全想到不到还可以这么做因为题目求的是平均值, 是总数除以个数, 这个时候就可以联系到斜率, 也就是说转化为给你一堆点, 让你求两点之间的最大斜率要做两个处理(1)去掉上凸点, 因为上凸点是无论如何都不会为最优解的(2)去掉之后每两个... 阅读全文
posted @ 2018-04-30 12:20 Sugewud 阅读(120) 评论(0) 推荐(0) 编辑
摘要:设切割的区间为(j, i), 注意两边都是开区间。然后可以预处理出以i为起点的最长连续递增的长度和以j为终点的最长连续递增的长度。大致思路就是枚举i,右边这一侧的最优值就知道了, 然后这道题的关键就是就是j取哪里。(1)去掉干扰元素, 这一步非常的关键, 设题目给的数... 阅读全文
posted @ 2018-04-29 20:03 Sugewud 阅读(171) 评论(0) 推荐(0) 编辑
摘要:滑动窗口这个方法名字非常形象, 先是窗口的右指针尽量往右滑, 滑不动了就滑窗口的左指针, 滑到右指针又可以开始滑动为止。这道题是要记录滑的过程中最大的窗口长度, 限制条件是窗口中不能出现重复的值。重复的值有两种判断方法。一种是set, 其实就是开个vis数组, 但是数... 阅读全文
posted @ 2018-04-29 16:06 Sugewud 阅读(123) 评论(0) 推荐(0) 编辑
摘要:这道题目用扫描法扫描法:在枚举的过程中维护一些重要的量, 从而简化计算这道题用到了极角, 叉积, 高一的我表示一脸懵逼不过自己去百度了一下好像大概看得懂。这道题我还有一些疑问, 先这样吧#include#include #include#define REP(i, a... 阅读全文
posted @ 2018-04-29 15:38 Sugewud 阅读(193) 评论(0) 推荐(0) 编辑
摘要:这道题用到了等价转换的思想所有要运到a1的酒, 都要经过a2, 所以不如把a2的值改成a1+a2,然后依次以此类推。#include#include #define REP(i, a, b) for(int i = (a); i < (b); i++)using na... 阅读全文
posted @ 2018-04-29 12:38 Sugewud 阅读(146) 评论(0) 推荐(0) 编辑
摘要:这道题目可以把问题分解, 因为x坐标和y坐标的答案之间没有联系, 所以可以单独求两个坐标的答案 我一开始想的是按照左区间从小到大, 相同的时候从右区间从小到大排序, 然后WA 去uDebug找了数据, 发现这组数据过不了 3 1 1 3 3 1 1 3 3 2 2 ... 阅读全文
posted @ 2018-04-29 12:02 Sugewud 阅读(109) 评论(0) 推荐(0) 编辑
摘要:这道题要逆向思维, 就是求出答案的一部分, 然后反过去去寻找答案存不存在。 其实很多其他题都用了这道题目的方法, 自己以前都没有发现, 这道题专门考这个方法。这个方法可以没有一直往下求, 可以省去很多时间。紫书里面把这叫做中途相遇法,双向广搜有点这个方法的味道。这里用... 阅读全文
posted @ 2018-04-29 11:42 Sugewud 阅读(119) 评论(0) 推荐(0) 编辑
摘要:这道题方法非常的巧妙, 两层的n*n, 第一层第I行全是第I个国家, 第二层的第j列全是第j个国家。这样能符合题目的条件。比如说第1个国家, 在第一层的第一行全是A, 然后在第二层的第一行就有ABCDE……这样A就和所有的国家都连接了,其他国家也是一样的。只能说这种方... 阅读全文
posted @ 2018-04-29 11:36 Sugewud 阅读(116) 评论(0) 推荐(0) 编辑
摘要:#include#include#include#include#define REP(i, a, b) for(int i = (a); i > a[n]) n++; for(int i = n - 1; i > 0; i--) { int pos = ma... 阅读全文
posted @ 2018-04-27 18:43 Sugewud 阅读(143) 评论(0) 推荐(0) 编辑
摘要:点击打开链接 阅读全文
posted @ 2018-04-27 18:26 Sugewud 阅读(238) 评论(0) 推荐(0) 编辑
摘要:#include#define REP(i, a, b) for(int i = (a); i = r) return; int i = l, j = r, key = a[l]; while(i = key) j--; //注意先从j开始, 也就是先从右边开始 ... 阅读全文
posted @ 2018-04-23 19:03 Sugewud 阅读(386) 评论(0) 推荐(0) 编辑
摘要:逆序对满足两个条件, i aj归并可以求逆序对, 因为是按顺序加入, 所以右区间加入的时候, 左区间的数满足 i aj, 所以这个时候计数器可以加上左区间还没加入数的个数, 即m-p, 注意是左闭右开区间, 所以m-p不用加一。 #include#define RE... 阅读全文
posted @ 2018-04-23 18:57 Sugewud 阅读(168) 评论(0) 推荐(0) 编辑
摘要:题目链接 点击打开链接这道题分为两个部分, 一用搜索枚举每种可能, 二计算表达式的值, 有挺多细节需要注意特别注意我的代码中在计算表达式的值中用到了一个!(代码枚举中的!表示不加符号, 我现在说的是表达式中的!), 这个是虚拟的, 是为了数字栈里面只有一个数字的时候... 阅读全文
posted @ 2018-04-21 16:18 Sugewud 阅读(213) 评论(0) 推荐(0) 编辑
摘要:参考了这哥们的博客 https://blog.csdn.net/hyqsblog/article/details/46980287 (1)atoi可以char数组转int, 头文件 cstdlib (2)小技巧,倒过来存是用[len-i-1] (3)这道题的关键在于... 阅读全文
posted @ 2018-04-20 23:34 Sugewud 阅读(126) 评论(0) 推荐(0) 编辑
摘要:这道题一开始我想的是在排序之后只在头和尾往中间靠近来找木块, 然后就WA, 事实证明这种方法是错误的。然后参考了别人的博客。发现别人是直接暴搜, 但是加了很多剪枝, 所以不会超时。我也想过这个做法,但是因为觉得肯定超时所以没有写, 我显然没有想到可以这么剪枝#incl... 阅读全文
posted @ 2018-04-20 21:04 Sugewud 阅读(112) 评论(0) 推荐(0) 编辑
摘要:这道题想了很久不知道怎么设置状态,怎么拓展,怎么判重, 最后看了这哥们的博客 终于明白了。https://blog.csdn.net/u014800748/article/details/47400557 这道题的难点在于怎么设置联通的状态,以及怎么拓展判重 . (1... 阅读全文
posted @ 2018-04-07 11:39 Sugewud 阅读(114) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示