第66题:排队
题目描述:全班N(2<=N<=45)个人排成一排,但因为高矮不齐,需要进行调整。调整的方法是,不调换左右次序,只让若干人后退一步变为第2排,使第一排留下的人从左到右的身高按降序排列,即右边的人不比左边的人高。如果第2排的人还不按降序排列,则照此办理,即再让第2排的若干人后退一步变为第3排,这样继续下去,直到所有排的人都按身高从高到低排列。
现在将每个人的身高保存在列表L中,给你L,请你找出一种使第一排留下的人数尽可能多的调整方法,输出第一排留下的人数P及最后调整完共有几排数K,P和K之间以一个空格隔开。
如,L=[130, 122, 112, 126, 126, 125, 120, 100],则输出6 2。
示例:输入:L = [130, 122, 112, 126, 126, 125, 120, 100]
输出:6 2
============================================================
第67题:101位自复制数
题目描述:什么叫自复制数呢?我们看看下面的例子:
625×625=390625
376×376=141376
9376×9376=87909376
90625×90625=8212890625
如果一个数的平方末尾还是这个数本身,那么它就是自复制数。
现在告诉你长度为101位的自复制数只有一个,你能把它找出来吗?请输出这个101位的自复制数。
============================================================
第68题:阶乘
题目描述:N的阶乘定义为:N!=N×(N-1)×……×2×1
请编写一个程序,输出N的阶乘的十进制表示中从最末一个非0位开始自低位向高位数的第K位。
现在给你N和K(0<=N<=10000,1<=K<=5),请你输出要求的数字(保证存在)。
例如:N=5,K=2,则输出1 note:(5!=120);
N=8,K=3,结果为0 note:(8!=40320)
示例:输入:N = 777
K = 5
输出:1
============================================================
第69题:回文数 I
题目描述:若一个数(首位不为0)从左到右读与从右到左读都是一样,这个数就叫做回文数,例如12521就是一个回文数。
给定一个正整数,把它的每一个位上的数字倒过来排列组成一个新数,然后与原数相加,如果是回文数则停止,如果不是,则重复这个操作,直到和为回文数为止。给定的数本身不为回文数。
例如:87则有:
STEP1: 87+78=165
STEP2: 165+561=726
STEP3: 726+627=1353
STEP4: 1353+3531=4884
现在给你一个正整数M(12 <= M <= 100),输出最少经过几步可以得到回文数。如果在8步以内(含8步)不可能得到回文数,则输出0。
例如:M=87,则输出4.示例:输入:M = 12
输出:1
============================================================
第70题:最大整数
题目描述:设有n个正整数,将他们连接成一排,组成一个最大的多位整数.
例如:3个整数13,312,343,连成的最大整数为:34331213
又如:4个整数7,13,4,246连接成的最大整数为7424613
现在给你一个正整数列表L,请你输出用这些正整数能够拼接成的最大整数。
note:测试数据已于2014年11月13日更新,以前通过的代码不一定能够再次通过。
示例:输入:L = [13, 312, 343]
输出:34331213