- 博客(23)
- 资源 (16)
- 收藏
- 关注
原创 数据关联
现在我们要关联两张表,A和B。每张表中有一些数据,这些数据被分成好多块。表A中有m个块。第i块有ai条数据。表B中有n个块,第i块有bi条数据。每一次操作可以将一条数据从一个块复杂到另外一个块。最后的目标是对于A中某一条数据和B中某一条数据他们会同时会出现在至少一个块中。问最少的操作次数。样例解释:可以将所有的数据都复制到B中的第二个块中。这样答案就是2+6+3=11。Input 单...
2018-02-28 22:29:21 2618
原创 中国好区间
阿尔法在玩一个游戏,阿尔法给出了一个长度为n的序列,他认为,一段好的区间,它的长度是>=k的,且该区间的第k大的那个数,一定大于等于T。那么问题来了,阿尔法想知道有多少好的区间。由于阿尔法的序列长度实在是太大了,无法在规定时间内读入。他想了一个绝妙的方法。读入a[0],b,c,p,则a[i]=(a[i-1]*b+c)mod p。样例解释:a1~a5分别为47,135,247,35,147对应...
2018-02-26 00:41:05 194
原创 51nod - 1525 重组公司
有n个人在公司里面工作。员工从1到n编号。每一个人属于一个部门。刚开始每一个人在自己的部门负责自己的项目,这样的话公司里面就有n个部门。然而,公司内部出现了危机,需要合并一些部门,以提高工作效率。team(person)表示person这个人所在的部门。有以下两种合并操作:1.合并team(x)和team(y)。x和y(1≤x,y≤n)是员工编号。如果team(x)...
2018-02-25 13:51:31 312 1
原创 交换机器的最小代价
有N台机器重量各不相等,现在要求把这些机器按照重量排序,重量从左到右依次递增。移动机器只能做交换操作,但交换机器要花费一定的费用,费用的大小就是交换机器重量的和。例如:3 2 1,交换1 3后为递增排序,总的交换代价为4。给出N台机器的重量,求将所有机器变为有序的最小代价。(机器的重量均为正整数)Input第1行:1个数N,表示机器及房间的数量。(2 <= N <= 50000)第2...
2018-02-21 01:15:25 295
原创 51nod - 1204 Parity
你的朋友写下一串包含1和0的串让你猜,你可以从中选择一个连续的子串(例如其中的第3到第5个数字)问他,该子串中包含了奇数个还是偶数个1,他会回答你的问题,然后你可以继续提问......你怀疑朋友的答案可能有错,或说同他之前的答案相互矛盾,例如:1 - 2 奇数,3 - 4 奇数,那么可以确定1 - 4 一定是偶数,如果你的朋友回答是奇数,就产生了矛盾。给出所有你朋友的答案,请你找出第一个出现矛盾的...
2018-02-20 00:50:42 1392
原创 六边形平面
现在有一个N*N的六边形网格平面(这种平面类似蜂窝形状)。下图是N=1,2,3,4条件下的具体形状,根据它们可以依次类推N=5,6,....。现在你需要对N*N网格中一些格子进行上色,在给定的输入中这些格子被标记上字符‘X’,而不用上色的网格被标记为‘-’。上色时需要注意,如果两个被上色的格子有公共边,那么这两个格子需要被涂成不同的颜色。问最少需要多少种颜色来完成任务?Input多组测试数据,第一...
2018-02-18 22:19:27 1166
原创 快乐排队
有一群人在排队,如果某个人想排到前面去,可以花一元钱给直接站在他前面的人,然后和这个人交换位置。如果自己没有钱了,就不能和前面的人交换。但是呢,队列里面的人觉得排他前面的所有人一定要比较有钱的,至少不能比他自己拿的少。否则里面就会有人生气。站在队头的人一定是高兴的。现在给出一个队列的初始状态,问能不能调整队列,使得里面的人都高兴。样例解释:样例1中,队尾的人可以和前面的人交换,变成9 10。Inp...
2018-02-16 23:30:50 155
原创 矩阵相乘结果的判断
给出三个N*N的矩阵A, B, C,问A * B是否等于C? Input 第1行,1个数N。(0 <= N <= 500)第2 - N + 1行:每行N个数,对应矩阵A的元素。(0 <= M[i] <= 16)第N + 2 - 2N + 1行:每行N个数,对应矩阵B的元素。(0 <= M[i] <= 16)第2N + 2...
2018-02-16 13:21:01 1970
原创 整数分解为2的幂
任何正整数都能分解成2的幂,给定整数N,求N的此类划分方法的数量!由于方案数量较大,输出Mod 1000000007的结果。比如N = 7时,共有6种划分方法。7=1+1+1+1+1+1+1 =1+1+1+1+1+2 =1+1+1+2+2 =1+2+2+2 =1+1+1+4 =1+2+4Input 输入一个数N(1 <= N <= 10^6) Ou...
2018-02-15 21:53:39 794
原创 等公交
小镇的公交车站里有N辆公交,标号为0,1,2,...,N-1。这个小镇的公交运作模式比较奇葩,当必须有一辆车离开车站时,系统会随机从N辆车中选择一辆车,其中任意一辆车i被选中的概率为prob[i]/100,当车i被选中后它会离开车站,并且在之后的time[i]的时间内完成它的行程并返回车站。然后系统又开始随机选N辆车之一(存在同一辆车被连续多次选中的可能)。这个车站在0时刻发出第一班车。如果你在s...
2018-02-13 01:43:31 234
原创 最大M子段和
N个整数组成的序列a[1],a[2],a[3],…,a[n],将这N个数划分为互不相交的M个子段,并且这M个子段的和是最大的。如果M >= N个数中正数的个数,那么输出所有正数的和。例如:-2 11 -4 13 -5 6 -2,分为2段,11 -4 13一段,6一段,和为26。 Input 第1行:2个数N和M,中间用空格分隔。N为整数的个数,M为划分为多...
2018-02-12 01:39:30 301
原创 与查询
有n个整数。输出他之中和x相与之后结果为x的有多少个。x从0到1,000,000 Input 第一行输入一个整数n。(1<=n<=1,000,000).第二行有n个整数a[0],a[1],a[2],...a[n-1],以空格分开.(0<=a[i]<=1,000,000) Output 对于每一组数据,输出10...
2018-02-11 22:25:49 271
原创 51nod - 1691 比大小
有两个数列A和B已知A_0,a,b,NA_n=A_(n-1)*a+b (n>=1)B数列满足B_n=2*B_(n/2) + 1 (n为偶数)B_n=2*B_((n-1)/2) + (n+1)/2 (n为奇数)现在问B数列的第A_N项和第(A_N)+1项的关系T组数据A_0,a,b,N<=1e15T<=100Input一个数T,数据组数每行四个数A_...
2018-02-10 15:26:10 223
原创 最长等差数列
N个不同的正整数,找出由这些数组成的最长的等差数列。例如:1 3 5 6 8 9 10 12 13 14等差子数列包括(仅包括两项的不列举)1 3 51 5 9 133 6 9 123 8 135 9 136 8 10 12 14其中6 8 10 12 14最长,长度为5。 Input 第1行:N,N为正整数的数量(3 <= N <= 10000)。...
2018-02-08 01:58:27 1397
原创 51nod - 1128 正整数分组 V2
给出一个长度为N的正整数数组,不改变数组元素的顺序,将这N个数分为K组。各组中元素的和分别为S1,S2....Sk。如何分组,使得S1至Sk中的最大值最小?例如:1 2 3 4 5 6分为3组,{1 2 3} {4 5} {6},元素和为6, 9, 6,最大值为9。也可以分为{1 2 3 4} {5} {6}。元素和为:10 5 6,最大值为10。因此第一种方案更优。并且第一种方案的最大值是所...
2018-02-07 00:47:17 229
原创 逆序排列
在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。如2 4 3 1中,2 1,4 3,4 1,3 1是逆序,逆序数是4。1-n的全排列中,逆序数最小为0(正序),最大为n*(n-1) / 2(倒序)给出2个数n和k,求1-n的全排列中,逆序数为k的排列有多少种?例如:n = 4
2018-02-05 22:57:58 4066
原创 51nod - 1535 深海探险
很久很久以前的一天,一位美男子来到海边,海上狂风大作。美男子希望在海中找到美人鱼,但是很不幸他只找到了章鱼怪。 然而,在世界的另一端,人们正在积极的收集怪物的行为信息,以便研制出强大的武器来对付章鱼怪。由于地震的多发,以及恶劣的天气,使得我们的卫星不能很好的定位怪物,从而不能很好的命中目标。第一次射击的分析结果会反映在一张由n个点和m条边组成的无向图上。现在让我们来确定这张图是不是可以被认...
2018-02-05 01:30:24 191
原创 AVL树的种类
平衡二叉树(AVL树),是指左右子树高度差至多为1的二叉树,并且该树的左右两个子树也均为AVL树。 现在问题来了,给定AVL树的节点个数n,求有多少种形态的AVL树恰好有n个节点。Input一行,包含一个整数n。 (0 Output一行表示结果,由于结果巨大,输出它对1000000007取余数的结果。Input示例10Output示例60#include #i
2018-02-04 20:00:02 185
原创 跳跃游戏
有一个可以在二维平面上做跳跃的机器人,该机器人有独特的跳跃程序。该程序的跳跃距离是由一个循环序列S决定的。序列S有无穷多项,但其有一个最小周期序列,令其为A,A中有N个元素(N<=50),S[i]=A[i mod N],i从0取到正无穷。例如,A={2,5,1,1}那么S={2,5,1,1,2,5,1,1,2,5,1,1.....}。机器人的跳跃规则如下:第k次跳跃时,机器人可以跳出离原来位置S[
2018-02-04 15:48:03 252
原创 限高二叉排列树
作为游戏魔方的编写者和管理员,Bob在很多主存模块中检测游戏魔方,并且Bob从未被用户打败,同时他也经常和游戏魔方作战。然而,不愉快的事情发生了,游戏《失落的洛杉矶》崩溃了,由于出现了一个非常可恶的病毒——“十六进制”,它非常奇怪,并且非常喜欢玩,因此,Bob必须先和它玩,才能和别人玩。此次“十六进制”发明了以下游戏:Bob必须通过一些有n个节点的二叉搜索树,二叉搜索树是一颗二叉树,每个节
2018-02-03 23:38:45 174
原创 打怪兽
lyk在玩一个叫做“打怪兽”的游戏。游戏的规则是这样的。lyk一开始会有一个初始的能量值。每次遇到一个怪兽,若lyk的能量值>=怪兽的能量值,那么怪兽将会被打败,lyk的能量值增加1,否则lyk死亡,游戏结束。若怪兽全部打完,游戏也将会结束。共有n个怪兽,由于lyk比较弱,它一开始只有0点能量值。n个怪兽排列随机,也就是说共有n!种可能,lyk想知道结束时它能量值的期望。由
2018-02-03 14:09:37 245
原创 二染色问题
一个N*N的网格,初始为白色。现在有一个K*K的印章,每次操作:你可以用印章把网格中一个K*K的子矩形染成黑色或白色。如果一个格子被多次染色,那么后一次染色会覆盖掉前一次的。现在,给你N*N的由黑白两色构成的图案board(board[i][j]为第i行第j列格子的颜色,不是白字母‘W’表示,就是黑由字母‘B’表示),问是否能通过若干次操作,将网格从初始状态染成图案board的样子。如果可以输出"
2018-02-02 22:28:13 1497
原创 斜率小于0的连线数量
二维平面上N个点之间共有C(n,2)条连线。求这C(n,2)条线中斜率小于0的线的数量。二维平面上的一个点,根据对应的X Y坐标可以表示为(X,Y)。例如:(2,3) (3,4) (1,5) (4,6),其中(1,5)同(2,3)(3,4)的连线斜率 Input第1行:1个数N,N为点的数量(0 <= N <= 50000)第2 - N + 1行:N个
2018-02-01 02:02:20 683
exceptional c++ style中文版 pdf 刘未鹏译
2010-09-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人