摘要:例62 二叉树 问题描述 如上图所示,由正整数1, 2, 3, ...组成了一棵无限大的二叉树。从某一个结点到根结点(编号是1的结点)都有一条唯一的路径,比如从10到根结点的路径是(10, 5, 2, 1),从4到根结点的路径是(4, 2, 1),从根结点1到根结点的路径上只包含一个结点1,因此路径
阅读全文
摘要:例61 数字对 问题描述 对于一个数字对(a, b),我们可以通过一次操作将其变为新数字对(a+b, b)或(a, a+b)。 给定一正整数n,问最少需要多少次操作可将数字对(1, 1)变为一个数字对,该数字对至少有一个数字为n。 输入 第一行一个正整数 n(1 <= n <= 106)。 输出 一
阅读全文
摘要:例60 集合 问题描述 一个集合S中有N个整数,找出其中值最大的元素D,满足条件A+B+C=D,并且A、B、C、D这四个不同的整数都属于集合S。 输入 输入包括多组测试用例,每组测试用例由一个整数n(1<=n<=1000),表示S中的元素个数,后跟S中的n个元素,每行一个。S的每个元素都是一个介于-
阅读全文
摘要:例59 幸运数字 问题描述 我们认为只包含5和9的数字为幸运数字,比如5, 9, 55, 59, 95... 现在对于给定的N,请你求出从小到大排列后的第N个幸运数字。 输入格式 输入包括多行,每行包含一个整数N(0<N<=4611686018427387904)。 输出格式 对于输入的每个整数N,
阅读全文
摘要:例58 连续子序列计数 问题描述 给定一个正整数序列,对其和可被给定整数d整除的所有连续子序列进行计数。这些子序列可能重叠。例如,序列 2, 1, 2, 1, 1, 2, 1, 2包含6个连续的子序列,其总和可被4整除:6个子序列为:第一到第八个数、第二到第四个数、第二到第七个数、第三到第五个数、第
阅读全文
摘要:例57 3n+1问题 问题描述 考虑如下的序列生成算法:从整数 n 开始,如果 n 是偶数,把它除以 2;如果 n 是奇数,把它乘 3 加1。用新得到的值重复上述步骤,直到 n = 1 时停止。例如,n = 22 时该算法生成的序列是:22,11,34,17,52,26,13,40,20,10,5,
阅读全文
摘要:例56 蚂蚁 问题描述 n只蚂蚁以每秒1cm的速度在长为Lcm的竿子上爬行。当蚂蚁爬到竿子的端点时就会掉落。由于竿子太细,两只蚂蚁相遇时,它们不能交错通过,只能各自反向爬回去,蚂蚁反向不需耗时。对于每只蚂蚁,我们知道它距离竿子左端的距离xi,但不知道它当前的朝向。请计算各种情况当中,所有蚂蚁落下竿子
阅读全文
摘要:例55 游戏预言 题目描述 John和朋友们在玩纸牌游戏,他们一共有m个人(包括John)。他们的纸牌比较特殊,一共有n*m张牌,牌号分别为1,2,…,n*m,没有牌号相同的牌。每个人先拿到n张牌,然后,每一轮,每个人出一张牌,谁最大则谁赢得这一轮。现在已知John手中的n张牌,计算他最少能赢得多少
阅读全文
摘要:例54 素数表 问题描述 令 Pi表示第 i 个素数。现任给两个正整数 M≤N≤104 ,请输出 PM到PN的所有素数。 输入格式 输入在一行中给出 M 和 N,其间以空格分隔。 输出格式 输出从 PM到 PN的所有素数,每 10 个数字占 1 行,其间以空格分隔。 输入样例 5
阅读全文
摘要:例53 蚂蚁移动 问题描述 某三角形中各边长为1的小三角形按下图所示的方式用连续整数编号。 一只蚂蚁需要从编号为M的三角形移动到编号为N的三角形。蚂蚁只能通过一个三角形的边移动到另一个三角形,不能通过顶点从一个三角形移动到另一个三角形。蚂蚁通过的边数作为蚂蚁移动路线的长度。 编写程序计算从编号为M的
阅读全文
摘要:例52 数字序列 问题描述 给出了一个正整数i。编写一个程序,以查找数字序列S1S2…Sk中位于位置i的数字。每组Sk由一系列从1到k的正整数组成。 例如,序列的前80位数字如下所示: 112123123412345123456123456712345678123456789123456789101
阅读全文
摘要:例51 第n个回文数 问题描述 回文是向前和向后读相同的单词、数字或短语。例如,“anna”是一个回文。数字也可以是回文(例如151或753357)。此外,数字可以按大小排序。前几个回文数字是:1,2,3,4,5,6,7,8,9,11,22,33,…。 数字10不是回文(即使您可以将其写为010),
阅读全文
摘要:例50 向下的路径 问题描述 有一个size=N的图,如图1所示。然后我们将找到一条从顶部节点到底部节点的向下路径。 首先,我们选择顶部节点作为开始。然后在任何节点,我们都可以沿着蓝色边缘水平或向下移动,到达下一个节点。当我们到达其中一个底部节点时,移动结束。然后,我们可以得到从顶部节点到底部节点的
阅读全文
摘要:例49 序列变换 问题描述 下面探讨由数字0和1构成的序列。初始时,序列中只有一个数字1。之后对序列进行变换,在每次变换时,同时将序列中的每个数字0转换为10,将每个数字1转换为01。因此,在第1次变换后,得到序列01;第2次变换后,得到序列1001;第3次变换后,得到序列01101001;…,依此
阅读全文
摘要:例48 钢管加工 问题描述 有N根钢管,每根长度是ai。有一个钢管加工器,每秒钟可以加工k长度的钢管。工人师傅需要按顺序加工这些钢管。 不过呢,机器的最大等待长度是h,即等待加工(已经塞入机器却还没有加工的钢管)的钢管长度不能超过h(保证ai <= h)。 加工工人只能在整数秒的时候塞入钢管。 求加
阅读全文
摘要:例47 车站 题目描述 火车从始发站(称为第 1 站)开出,在始发站上车的人数为 a,然后到达第 2 站,在第 2 站有人上、下车,但上、下车的人数相同,因此在第 2 站开出时(即在到达第 3 站之前)车上的人数保持为 a 人。从第 3 站起(包括第 3 站)上、下车的人数有一定规律:上车的人数都是
阅读全文
摘要:例46 巧妙称重 题目描述 有N个篮子,编号1~N,篮子中有很多金币,每个重w。但是有一个编号的篮子中,每个金币重d。现从第一个篮子中拿1个金币,第二个篮子中拿2个,…,第N-1中拿N-1个,第N中不拿,给出这些金币的总重量wei,问:是第几个篮子中的金币重量较轻? 输入格式 输入文件将由一行或多行
阅读全文
摘要:例45 最大乘积 问题描述 给定一个整数 n,找到三个整数 x,y,z,要求满足 x+y+z=n且 x,y,z都能整除 n,且使得乘积xyz 的值最大,求 xyz的最大值。 输入格式 第一行为一个整数 T (1≤T≤106),表示数据组数,接下去 T 行每行一个整数 n (1≤n≤106)。 输出格
阅读全文
摘要:例44 分糖果 问题描述 十个小孩围坐一圈分糖果,开始时,老师随机分给每位小孩若干糖果。为了公平,现进行调整,调整规则:所有小孩同时把自己糖果的一半分给左边的小孩,调整分一半时如果哪位小孩的糖果数为一个奇数,向老师补要1块(设老师手中的糖果足以满足这些要求)。问经过多少次调整,大家的糖果数都一样?每
阅读全文
摘要:例43 Excel地址 问题描述 Excel是常用的办公软件。在Excel表格中,每个单元格都有唯一的地址表示。比如:第12行第4列表示为“D12”,第5行第255列表示为“IU5”。 事实上,Excel提供了两种地址表示方法,还有一种表示法叫做RC格式地址。 第12行第4列表示为“R12C4”,第
阅读全文
摘要:例42 康托展开 问题描述 康托展开是一个全排列到一个自然数的双射,常用于构建hash表时的空间压缩。设有n个数(1,2,3,4,…,n),可以有组成n!种不同的排列组合,康托展开表示的就是当前排列组合在n个不同元素的全排列中的名次。 例如,3个数 {1,2,3} 按从小到大的排列一共6个,分别是1
阅读全文
摘要:例41 快速幂运算 题目描述 输入三个整数 b,p,k(0≤b,p,k<231),求 b^p mod k 输入格式 一行三个整数 b,p,k 输出格式 输出 b^p mod k=s (s 为运算结果) 输入样例 2 10 9 输出样例 2^10 mod 9=7 (1)编程思路。 在实际应用中,我们经
阅读全文
摘要:例40 最大公约数问题 题目描述 已知正整数a0、a1、b0、b1,设某未知正整数 x 满足: 1. x和a0的最大公约数是a1; 2. x和b0的最小公倍数是b1。 现在要求出满足条件的正整数x。这样的x 并不唯一,甚至可能不存在。例如,若 a0=41,a1=1,b0=96,b1=288,则x可以
阅读全文