1. | “快乐数” 【问题描述】 编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直 到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。 【样例输入】 32 【样例输出】 yes 【样例输入】 37 【样例输出】 no |
---|
a = input()
for i in range(1,40):
sum = 0
for i in a:
i = int(i)
sum += i**2
a = str(sum)
if sum==1:
print("yes")
else:
print('no')
2. | 有效密码 【问题描述】网站要求用户输入用户名和密码进行注册。编写程序以检查用户输入的密码的有效性。以下是检查密码的标准: 编写函数isVaildPassword,函数为一个字符串,表示用户提供的密码,返回为True和False表示密码是否有效. 【样例输入】aBc123@ |
---|
def isVaildPassword(key):
cout1, cout2, cout3 = 0, 0, 0
for i in key:
if i:
cont1 = cout1+1
elif i in list2:
cout2 = cout2+1
elif i in list3:
cout3 = cout3+1
if cout1!=0 and cout2!=0 and cout3!=0 and 6<=len(key)<=12:
return True
else:
return False
a = list(input())
print(isVaildPassword(a))
3. | 求a + aa + aaa + aaaa 【问题描述】编写一个程序,给定的正整数a的值,计算a + aa + aaa + aaaa的值, 【输入形式】9 【输出形式】11106 |
---|
a = int(input())
aa = a*10+a
aaa = a*100+aa
aaaa = a*1000+aaa
sum = a+aa+aaa+aaaa
print(sum)
4. | 判断数中是否存在重复的数字 【问题描述】 输入一个数,判断该数中是否存在重复的数字。如1314,有重复,520,无重复。 【样例输入】 1314 yes 【样例输入】 520 no |
---|
num1 = input()
num2 = [i for i in num1]
set1 = set(num2)
if len(set1) == len(num2):
print("no")
else:
print("yes")
5. | 删除所有重复的单词 【问题描述】编写一个程序,接受一系列空格分隔的单词作为输入,并在删除所有重复的单词并按字母数字排序后打印这些单词。【输入形式】 【样例输出】again and hello makes perfect practice world |
---|
str1 = input().split(' ')
set1 = set(str1)
s = sorted(set1)
for i in s:
print(i,end=" ")
6. | 录取研究生 【问题描述】某高校录取研究生的要求是,每门课成绩不低于60分,总成绩不低于340分,370分以下为自费。编一程序实现输入一个学生的四门课成绩,试判断该生为该校录取的情况(没有录取“not”、自费“pay”、公费“free”三种情况)。 【输入形式】 输入四门课的成绩,成绩均为0~150之间的整数。输入4门课成绩的时候可以结合eval()和input()函数一次性输入4个值,输入数字时用逗号分隔 【输出形式】 not或者pay或者free 【样例输入】 four scores:55,120,110,120 not |
---|
(x,y,s,q) = eval(input("four scores:"))
sum = x+y+s+q
if x<60 or y<60 or s<60 or q<60 or sum<340:
print("not")
else:
if sum>=370:
print("free")
else:
print("pay")
7. | 用人名查电话 【问题描述】 定义一个电话簿,里头设置以下联系人: 'mayun':'13309283335', 'zhaolong':'18989227822', 'zhangmin':'13382398921', 'Gorge':'19833824743', 'Jordan':'18807317878', 'Curry':'15093488129', 'Wade':'19282937665' 现在输入人名,查询他的号码。 人名,是一个字符串。 电话号码。如果该人不存在,返回"not found" mayun 13309283335 |
---|
name = input()
dict1 = {
'mayun': '13309283335',
'zhaolong':'18989227822',
'zhangmin':'13382398921',
'Gorge':'19833824743',
'Jordan':'18807317878',
'Curry':'15093488129',
'Wade':'19282937665'
}
if name in dict1:
print(dict1[name])
else:
print("not found")
8. | 猴子吃桃问题 【问题描述】猴子吃桃问题: 【样例输入2】0 |
---|
a = eval(input())
b = 1
if a!=int(a) or a<0:
print("illegal data")
elif a==0:
print("0")
else:
for i in range(1,a):
b = b*2 + 2
print(b)
9. | Python 小球反弹 【问题描述】 10 3 【输出样例】 16.25 0.16 |
---|
n = int(input())
m = int(input())
sum = n
while m!=1:
sum += n*0.25*2
m = m - 1
n = 0.25*n
print('%.2f'%sum)
print('%.2f'%((n*0.25)+0.0001))
10. | 韩信点兵 【问题描述】 有一群士兵,人数不超过n。韩信将其按照一行3人排队,余2人;按照一行5人排队,余1人;按照一行7人排队,刚好排成若干行。编写程序 计算士兵的人数。 (提示:可以采用穷举法求解。当人数上限比较大时,会有多种结果,要求全列举出来)
人数上限 n 士兵人数 60 56 |
---|
n = eval(input())
i = 1
for i in range(1,n+1):
if i%3==2 and i%5==1 and i%7==0:
print(i,end=' ')