摘要:
用Miller-rabin判素数之前,先要知道一个叫费马小定理的东西。 费马小定理:如果p是质数,那么任意和p互质的数的p-1次方对p取模都等于一。 即:任意gcd(a,p)==1,那么a^(p-1)≡1(mod p) 既然我们用费马小定理又得到了一个新的质数的性质,那么我们就可以用这个性质来判定素 阅读全文
摘要:
Minkowski和的定义是: 对于两个点集,他们的Minkowski和为 {(x1+x2,y1+y2):(x1,y1)belong to P,(x2,y2)belong to S}; 至于怎么写,还没找到资料,不过要用归并排序。 阅读全文
摘要:
凸包的定义: 把平面内指定点全部包含的多边形(可以看成绳子围木桩)。 凸包的求法: 一. Graham扫描法 1.找到y坐标最小的点(如果有几个y坐标最小,就选其中x坐标最小的),作为基点(H)。 2.把其他每个点到基点的线段与x轴的夹角,然后按这个夹角从小到大排序,然后逆时针扫一遍。 3.排序后依 阅读全文
摘要:
一种奇怪的数据结构:用来查询某点到该点集中的最小距离。 下面来自Tsinghua, IIIS的pdf: 把点按x坐标排序,设Am为中位数,左边的集合为L,右边的集合为R。 建一棵以m为根的树,根节点储存所有点的包围框(用来剪枝)。 递归地对L,R建树。下一层应该按y坐标排序,再下层按x坐标,以此类推 阅读全文
摘要:
扫描线这个东西比较玄虚,总的来讲大概是一种思想。 想象一条线从区间(或是其他什么)慢慢扫过,线每次碰到某个东西称为事件,然后根据事件来进行一些操作。 一般来讲,区间用扫描线要用到离散化和线段树来优化(要不然)。 具体的扫描线怎么用,主要是根据题目来做。 现在来看看扫描线的题目: POJ1151 At 阅读全文
摘要:
题目描述 贝西参加了 N 门考试。第 i 门考试的满分为 P i ,贝西的得分为 T i 。学校计算总评分的方法是将 每门考试的得分之和作为分子,满分之和作为分母,以它们的比值作为总评分。 根据学校的政策,在计算总评分的时候,贝西可以选择取消 D 门考试的成绩,这样可以使剩下 的考试得到更高的总评分 阅读全文
摘要:
题目描述 约翰的奶牛对食物越来越挑剔了。现在,商店有 M 份牧草可供出售,奶牛食量很大,每份牧草 仅能供一头奶牛食用。第 i 份牧草的价格为 P i ,口感为 Q i 。约翰一共有 N 头奶牛,他要为每头奶牛 订购一份牧草,第 i 头奶牛要求它的牧草价格不低于 A i ,口感不低于 B i 。请问, 阅读全文
摘要:
题目描述 YaoYao is fond of playing his chains. He has a chain containing n diamonds on it. Diamonds are numbered from 1 to n. At first, the diamonds on th 阅读全文
摘要:
题目描述 1. 加入:一个新的成员加入同好会,我会分配给他一个没有使用的id,并且询问他的兴趣值val。 2. 修改:id在区间[a,b]内的成员,兴趣值同时改变k,k有可能是负数,表示他们失去了对同好会的兴趣。 3. 退出:id在区间[a,b]内的成员要退出同好会,虽说是区间,也有可能只有1个人。 阅读全文
摘要:
题目描述 输入 第1行:1个正整数n,表示操作数量,100≤n≤200,000 第2..n+1行:可能包含下面3种规则: 1个字母'I',紧接着1个数字k,表示插入一个数字k到树中,1≤k≤1,000,000,000,保证每个k都不相同 1个字母'Q',紧接着1个数字k。表示询问树中不超过k的最大数 阅读全文