- 博客(12)
- 资源 (16)
- 收藏
- 关注
原创 两个集合
小X有n个互不相同的整数: p1,p2,...,pn 。他想把这些整数分到两个集合A和B里边。但是要符合下面两个条件。· 如果x属于A,那么a-x也肯定属于A。· 如果x属于B,那么b-x也肯定属于B。判断一下是否存在一种方案来分配这些数字到集合A,B中。注意:如果一个集合为空也是可以的。Input单组测试
2017-09-30 21:48:18 1251
原创 配对
给出一棵n个点的树,将这n个点两两配对,求所有可行的方案中配对两点间的距离的总和最大为多少。Input一个数n(1<=n<=100,000,n保证为偶数)接下来n-1行每行三个数x,y,z表示有一条长度为z的边连接x和y(0Output一个数表示答案Input示例61 2 11 3 11 4 13 5 14 6 1Output示例
2017-09-30 19:55:45 282
原创 浮波那契
TengBieBie已经学习了很多关于斐波那切数列的性质,所以他感到一些些厌烦。现在他遇到了一个新的数列,这个数列叫做Float-Bonacci。这里有一个关于Float-Bonacci的定义。对于一个具体的n,TengBieBie想要快速计算FB(n).但是TengBieBie对FB的了解非常少,所以他向你求助。你的任务是计算FB(n).FB(n)可能非常大,请输出FB(n)
2017-09-26 02:10:33 389
原创 士兵的数字游戏
两个士兵正在玩一个游戏,游戏开始的时候,第一个士兵为第二个士兵选一个正整数n。然后第二个士兵要玩尽可能多的轮数。每一轮要选择一个正整数x>1,且n要是x的倍数,然后用n/x去代替n。当n变成1的时候,游戏就结束了,第二个士兵所得的分数就是他玩游戏的轮数。为了使游戏更加有趣,第一个士兵用 a! / b! 来表示n。k!表示把所有1到k的数字乘起来。那么第二个士兵所能得到的最大分数是多少呢?
2017-09-19 01:50:38 730
原创 括号序列的最长合法子段
这里有另一个关于处理合法的括号序列的问题。如果插入“+”和“1”到一个括号序列,我们能得到一个正确的数学表达式,我们就认为这个括号序列是合法的。例如,序列"(())()", "()"和"(()(()))"是合法的,但是")(", "(()"和"(()))("是不合法的。这里有一个只包含“(”和“)”的字符串,你需要去找到最长的合法括号子段,同时你要找到拥有最长长度的子段串的个数。
2017-09-16 23:27:09 1712 1
原创 游戏得分
A与B两人玩一个游戏,这个游戏有若干个回合(可能0回合)。游戏的回合依次标号为1,2,3,4...。你不需要关心游戏的内容,现在只要知道第i回合胜者会获得2*i-1分,每回合游戏不存在平局。现在已知A和B在游戏结束时各获得了x分与y分的总分。问A在这个游戏中至少获胜了几盘?如果给出的x与y一定不会出现那么输出-1.Input多组测试数据,第一行一个整数T,表示测试数据数量,1<=T<=5
2017-09-15 08:11:33 655
原创 区间LCM
一个整数序列S的LCM(最小公倍数)是指最小的正整数X使得它是序列S中所有元素的倍数,那么LCM(S)=X。例如,LCM(2)=2,LCM(4,6)=12,LCM(1,2,3,4,5)=60。现在给定一个整数N(1N,同时LCM(1,2,3,4,...,N-1,N) 整除 LCM(N+1,N+2,....,M-1,M),即LCM(N+1,N+2,....,M-1,M)是LCM(1,2,3,
2017-09-12 02:04:05 856
原创 时钟
有N个时钟,每个时钟有M个指针,P个刻度。时钟是圆形的,P个刻度均分整个圆。每个时钟每个指针指向整数刻度,并且每个时钟自身指针指向的数字都不同。你可以任意旋转时钟的表盘,但是你不能转指针。问最后有多少对时钟可以变成相同的状态。例如:N = 5,M = 2,P = 4,5个时钟的数据如下{1, 2} {2, 4} {4, 3} {2, 3} {1, 3}经过旋转后
2017-09-09 23:40:26 313
原创 合法括号子段
有一个括号序列,现在要计算一下它有多少非空子段是合法括号序列。合法括号序列的定义是:1.空序列是合法括号序列。2.如果S是合法括号序列,那么(S)是合法括号序列。3.如果A和B都是合法括号序列,那么AB是合法括号序列。Input多组测试数据。第一行有一个整数T(1<=T<=1100000),表示测试数据的数量。接下来T行,每一行都有一个括号序列,是一个由'('和')
2017-09-07 23:34:38 724
原创 前缀后缀集合
一个数组包含N个正整数,其中有些是重复的。一个前缀后缀集是满足这样条件的下标对(P,S), 0例如:3 5 7 3 3 5,共有14个集合符合条件:(1, 4), (1, 3), (2, 2), (2, 1), (2, 0), (3, 2), (3, 1), (3, 0), (4, 2), (4, 1), (4, 0), (5, 2), (5, 1), (5, 0)本题由 @jav
2017-09-07 21:34:57 792
原创 山峰和旗子
用一个长度为N的整数数组A,描述山峰和山谷的高度。山峰需要满足如下条件, 0 A[P + 1]。现在要在山峰上插上K个旗子,并且每个旗子之间的距离 >= K,问最多能插上多少个旗子(即求K的最大值)。两个山峰之间的距离为|P - Q|。以上图为例,高度为:1 5 3 4 3 4 1 2 3 4 6 2。其中可以作为山峰的点为:1 3 5 10。放2面旗子,
2017-09-05 01:11:38 583
原创 排船的问题
一个码头中有N艘船和N个木桩,船的长度为2*X,码头的宽度为M,N个木桩的位置(相对码头左岸的位置)会在数据中给出。船和船之间不能重叠,即每艘船的船头不能超过上一艘船的船尾,当然也不能超出码头的两岸。船和木桩之间用绳子连接,并且1个木桩只能栓1条船,绳子的一头拴在木桩上,另一头拴在船的中间。而船中间到木桩的距离,就是所需的绳子的长度。由你根据给出的条件,排列船的位置,使得所用到的最长的绳子最短。输
2017-09-02 23:04:04 523
exceptional c++ style中文版 pdf 刘未鹏译
2010-09-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人