题目链接:http://www.lydsy.com:808/JudgeOnline/problem.php?id=3669
记得四个月之前的NOI同步赛,我还只会玩脚丫子。。。。
记得我当时看到这个题整个人就吓傻了,完全不知道怎么做,然后NOI同步赛就这样爆零了。。。
如今我学了LCT这个神器,再看这个题,感觉不再那么难了。
其实这个题的标准解法是SPFA,改得完全认不出来的SPFA。
...
分类:
其他好文 时间:
2014-12-02 20:52:00
阅读次数:
253
题目大意:给出平面中的一些点,询问平面中的一些矩形中有多少点。
思路:正常应该是二维树状数组,然后数据范围太大。所以就只能按照一个坐标排序,另一个坐标跑树状数组。注意离线操作,一个问题拆成4个。
CODE:
#include
#include
#include
#include
#define MAX 500010
#define RANGE 10000010
u...
分类:
编程语言 时间:
2014-12-02 16:41:44
阅读次数:
298
题目大意:给出一排东西,现在要建造防御塔,在i处建造防御塔的花费是cost[i],所有东西的花费是他它距离右侧最近的防御塔的距离。求最小花费。
思路:很简单的斜率优化。DP方程:f[i] = f[j] + (i - j - 1) * (i - j) / 2 + cost[i]
然后简单整理一下会发现f[j] + (j + 1) * j / 2 = f[i] - i ^ 2 + i * ...
分类:
其他好文 时间:
2014-12-02 16:41:15
阅读次数:
166
题目大意:山坡上有一些仓库,下雨了,要把所有仓库中的东西转移出来,每转移一单位的东西走一个单位长度需要花费1,在i处建立一个仓库需要花费cost[i],求最小的花费。
思路:和小P的牧场好像啊。。。
记录两个前缀和,sum[i] = Σsrc[i]
_sum[i] = Σsrc[i] * pos[i],
然后DP方程:f[i] = f[j] + (sum[i] - sum[j]) ...
分类:
其他好文 时间:
2014-12-02 13:39:22
阅读次数:
238
欧几里得算法,即辗转相除法,用于求整数a,b的最大公约数。
欧几里得算法C++实现代码:(无需确定 a,b 大小关系)
long long gcd(long long a,long long b){
return b?gcd(b,a%b):a;
}
扩展欧几里得算法:设a和b不全为0,则存在整数x和y,使得 gcd(a,b) = xa + yb
证明: 假设 a...
分类:
编程语言 时间:
2014-12-02 13:36:53
阅读次数:
193
http://www.lydsy.com/JudgeOnline/problem.php?id=1079只能想到5^15的做法。。。。。。。。。。。。。。。。。。。。。。。。。。。果然我太弱。其实应该是没利用好题目的信息,ci#include #include #include #include #...
分类:
其他好文 时间:
2014-12-02 13:22:18
阅读次数:
324
题目大意:有些按照一字排列的牧场,每一个牧场有一个费用和放牧数量。现在要在一些牧场上建造控制站,目的是控制所有的牧场,建立控制站的基础费用就是每个牧场的费用,然后每一个牧场需要付这个牧场的放养数量*它与右边相邻的控制站的距离。求最小的费用。
思路:直接弄有些不好弄,需要两个前缀和来进行差分。
sum[i] = Σsrc[i]
_sum[i] = Σsrc[i]*i
然后DP方程就是...
分类:
其他好文 时间:
2014-12-02 10:36:59
阅读次数:
170
题目大意:给出一些木板,现在要购买这些木板。购买的规则是可以一些木板一起买,然后价格是最大的长度乘最大的宽度。求购买所有木板的最小费用。
思路:如果一个木板的长也比一个木板小,宽也比一个木板小,那么这个木板就可以被排除。把所有木板按照x的长度排序,然后去掉排除的木板,然后剩下的木板就是x值下降, y值上升的木板。这样的话我们买下连续的一段的费用就是x[j] * y[i],然后DP方程就很...
分类:
其他好文 时间:
2014-12-02 10:36:03
阅读次数:
157
求乘法逆元的代码:#include<iostream>#include<stdio.h>#include<stdlib.h>#include<algorithm>#include<string.h>#include<math.h>usingnamespacestd;intgcd(inta,intb,int&x,int&y){intans;if(!b){x=1;y=0;returna;}ans=gcd(b,..
分类:
其他好文 时间:
2014-12-02 00:19:22
阅读次数:
154
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1064分析:如果a看到b,则a->b那么:1、如果图中有环,则说明这个环的长度肯定是答案的倍数。所以最大种类数=所有环的长度的gcd,最小种类数=所有环的长度的公约数中>=3的最小数2、如...
分类:
其他好文 时间:
2014-12-02 00:01:43
阅读次数:
279