Python123之练习
1.第K序元素查找
编写程序,在无排序的一个列表中查找第k个最大元素。例如, 给定3,2,1,5,6,4和k=2,输出5。2)
注意:假设k总是有效的,且k值大于等于0,小于等于数组的长度。3)输入代码并提交解答。
注意:提交代码时请删除input()函数中的参数,否则会出现错误。
代码:
li=list(eval(input( )))
k=eval(input())
li=sorted(li)
li.reverse( )
print(li[k-1])
2.照猫画虎求阶乘
描述: 阶乘是基斯顿·卡曼(Christian Kramp)于 1808 年发明的运算符号,是数学术语。一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。任何大于等于1 的自然数n 阶乘表示方法:
代码:
n = int(input())
sum = 1
for i in range(1, n+1):
sum = sum * iprint(sum)
3.两数和的目标
给定一个整数列表,在其中找到两个元素使其相加之和等于目标数,并返回两个整数在列表中的下标。如果没有符合条件的数字,输出False,本题可以假设题目的解唯一。
注意:分两次input()分别读入整数列表和目标数;输出采用列表形式。例如,依次输入整数列表 [2,7,11,15] 和9,输出[0, 1]。3)输入代码并提交解答。
注意:提交代码时请删除input()函数中的参数,否则会出现错误。
代码:
num=input().strip().strip(’[’).strip(’]’).split(",")
num=list(map(int,num))num.reverse()
num1=sorted(num)
nums=[]
target=int(input())
i=0
for x in num:
number=target-x
if(number in num[num.index(x)+1:]): y=num.index(number,i+1) z=num.index(x)
if(z<y): nums.append(len(num)-z-1) nums.append(len(num)-y-1) nums=sorted(nums) print(nums)
exit()
i=i+1
print(“False”)