[题面戳我][1] 给你n+1个n维坐标,求它们的球心坐标。保证数据有解。n include using namespace std; const int N = 20; int n; double x[N][N],a[N][N],tot[N],sol[N]; int main() { scanf( ...
分类:
Web程序 时间:
2018-01-09 10:17:26
阅读次数:
213
http://www.lydsy.com/JudgeOnline/problem.php?id=1013 设球心(x1,x2,x3……) 已知点的坐标为t[i][j] 那么 对于每个i满足 Σ (t[i][j]-x[j])^2 = Σ (t[0][j]-x[j])^2 化简开就是 2*(t[0][j ...
分类:
Web程序 时间:
2018-01-03 11:36:53
阅读次数:
253
1016: [JSOI2008]最小生成树计数 题目:传送门 题解: 神题神题%%% 据说最小生成树有两个神奇的定理: 1、权值相等的边在不同方案数中边数相等 就是说如果一种方案中权值为1的边有n条 那么在另一种方案中权值为1的边也一定有n条 2、如果边权为1的边连接的点是x1,x2,x3 那么另一 ...
分类:
Web程序 时间:
2017-12-31 12:57:44
阅读次数:
180
"原题" 这道题目在一开始想的时候我感觉没有什么思路,然后仔细一想,如果可以重新建边呢??? 我们不妨先把所有点都设定为一个孤独的岛屿,然后不断连边,所有第一个的答案就出来了!!! 然后每一次我们可以增加一个点,然后把所有与他有关的边连接起来,就!!!AC了! include define file ...
分类:
Web程序 时间:
2017-12-28 23:33:23
阅读次数:
206
1016: [JSOI2008]最小生成树计数 Description 现在给出了一个简单无向加权图。你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树。(如果两颗最小生成树中至少有一条边不同,则这两个最小生成树就是不同的)。由于不同的最小生成树可能很多,所以你只需要输出方 ...
分类:
Web程序 时间:
2017-12-23 17:10:39
阅读次数:
213
题解: 我们可以知道每个不同的最小生成树对于一个边权所使用的数量都是相同的. 那么我们就可以先做一次最小生成树,然后对于每一个最小生成树中的边权搜索出所有的可以选取的方案,然后乘法原理累计答案即可. ...
分类:
Web程序 时间:
2017-12-22 00:42:03
阅读次数:
133
给定n<=200000个操作:单点插入,查最后若干个数的Max,强制在线。 在线个鬼啊至少我空间还是可以先分配的,把序列倒过来,分配好空间,每个查询就是一个前缀Max了。 1 #include<stdio.h> 2 #include<string.h> 3 #include<algorithm> 4 ...
分类:
Web程序 时间:
2017-12-21 23:04:57
阅读次数:
226
标签:Splay+Hash 题解: 首先肯定不是后缀数组,当然splay比后缀数组要简单一些。 求解这个问题,我们可以二分,对于两个串A,B他们的最长公共前缀是可以二分出来的。 那么我们对于每一个后缀,二分一下,但是需要维护这一个东西,那么我们使用splay来维护序列。按照下标为关键字来把初始字符串 ...
分类:
Web程序 时间:
2017-12-21 18:13:34
阅读次数:
241
题解: 用splay维护添加修改操作,然后二分hash判断长度. 操作一:对于查询区间[l,r]的hash值,显然将l-1旋到根,将r+1旋到根的右儿子,此时所求区间就是根的右儿子的左儿子了. 操作二:将要修改的位置旋到根,然后直接改就可以了. 操作三:要在x后面添加一个字符,显然将x旋到根,x+1 ...
分类:
Web程序 时间:
2017-12-21 18:12:55
阅读次数:
280