摘要:
原题叙述弄懂求2维平面最近点对的方法就很简单了。求最近点对大致如下:1.以x,y坐标排序,先排x,再y2.再for i:=1..n 一遍,找到相邻点之间的距离,以找出相邻点间最短距离min(以便后面的剪枝)3.分治,即折半查找。 分为两个点集X,Y,设最近点对为{A,B},有可能有3种情况 (1)A,B均在X。(2)A,B均在Y。(3)A,B分别在X与Y中 对于(1)(2),继续分治;对... 阅读全文
摘要:
标题:找出没有出现的数说明每个测试点时限:1 second每个测试点内存限制:1 MB测试点数量:10是否有Special Judge:否使用标准输入输出题目描述给你一个n和n-2个不重复的在1~n之间数找出没有出现的那2个数n <= 1000000输入格式第一行,一个数n第二行,n-2个在1~n之间不重复的数,用一个空格隔开输出格式一行,两个没有出现的数从小到大排序样例输入31样例输出2 ... 阅读全文
摘要:
完全平方数? 首先,背下1-20的平方数,因为常用。 然后牢记以下规律: 完全平方数,凡是个位为0的,其平方根个位必为0 完全平方数,凡是个位为1的,其平方根个位必为1或9 完全平方数,凡是个位为4的,其平方根个位必为2或8 完全平方数,凡是个位为5的,其平方根个位必为5 完全平方数,凡是个位为6的,其平方根个位必为4或6 完全平方数,凡是个位为9的,其平方根个位必为3或7 然后,对于一个比较大的... 阅读全文
摘要:
原题叙述此题有两解:1.直接法:由题可知:f[i,j]表示字串i到j部分的构成回文的最少添加字符数,所以 f[i,j]:=min(f[i+1,j]+1,f[i,j-1]+1,f[i+1,j-1]+ord(a[i]<>a[j])*2); 可递归求得。 但是由于此题的时间限制以及递归过程中调用函数缓慢,会导致部分数据超时。结果只有82分。代码如下:[代码]2.... 阅读全文
摘要:
题目描述此乃水题也!既然如此,为何还要写这个题解呢?当然,他水了,我不能水,所以水题就用树来完成!先建个排序二叉树,然后来个中序遍历,一样搞定!速度很快!有图有真相:代码如下[代码] 阅读全文
摘要:
原题不需要凸包,不需要排序,什么都不需要,直接计算然后加一个2*Pi*r代码都懒得写了。 阅读全文
摘要:
具体内容参看原题。停牛们说这是noip最难的一道DP,不知是不是真的,个人感觉没有多进程DP难。我是这样做的:(当然,在大牛的帮助下)DP方程很好想:f[i]=f[i-k] or f[i],(k=s..t);但是问题在于巨大的数据范围,对于30%的数据,L <= 10000;对于全部的数据,L <= 10^9。所以这样做绝对挂掉。仔细看,会发现石子数M的范围很小,1 <= M &... 阅读全文
摘要:
原题地址http://www.vijos.cn/Problem_Show.asp?id=1001题很水很简单,照着题目要求一步一步来即可,模拟题。(突然发现怎么没法在代码框内打中文呢......汗....)代码如下:[代码] 阅读全文
摘要:
I.问题的提出 整数n的阶乘写作n!,它是从l到n的所有整数的乘积。阶乘增长的速度很快:13!在大多数计算机上不能用32位的整数来存放。70!已经超出多数浮点类型的范围。你的任务是找出n!最右边的非零位。例如,5!=1*2*3*4*5=120,所以5!的最右非零位为2,同样,7!=1*2*3*4*5*6*7=5040,所以7!的最右非零位为4。50!=30414093201713378043612... 阅读全文
摘要:
饭票 (bticket.pas)学校的食堂在使用饭卡之前使用饭票饭票并不向饭卡一样方便。比如你有1张5元饭票和3张1元饭票,则你无法付4元的饭费。某天小x去食堂吃饭,手里有n种饭票,面值分别为A1~An,数量分别为C1~Cn请你计算小x的饭票能组成多少在[1,m]区间内的面值。Input (bticket.in)第一行2个数n m,用空格隔开。以后n个数,分别为A1..An以后n个数,分别为C1.... 阅读全文