1. 字符串最后一个单词的长度
描述:计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)
输入描述:输入一行,代表要计算的字符串,非空,长度小于5000。
输出描述:输出一个整数,表示输入字符串最后一个单词的长度。
示例1:
输入:hello nowcoder
输出:8
参考代码:
import sys
for line in sys.stdin:
a = line.split()
print(len(a[-1]))
2. 计算某字符出现次数
描述: 写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)
输入描述:第一行输入一个由字母、数字和空格组成的字符串,第二行输入一个字符(保证该字符不为空格)。
输出描述:输出输入字符串中含有该字符的个数。(不区分大小写字母)
示例:
输入:ABCabc
A
输出:2
参考代码:
import sys
tmp_list = []
for line in sys.stdin:
tmp_list.append(line)
tmp_str = tmp_list[0]
tmp_flag = tmp_list[1]
result = tmp_str.upper().count(tmp_flag.upper()[0])
print(result)
3. 明明的随机数
描述:明明生成了N个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。
输入描述:第一行先输入随机整数的个数 N 。 接下来的 N 行每行输入一个整数,代表明明生成的随机数。 具体格式可以参考下面的"示例"。
输出描述:输出多行,表示输入数据处理后的结果
示例:
输入:
3
2
2
1
输出:
1
2
参考代码:
import sys
input_list = []
for line in sys.stdin:
a = line.split()[0]
input_list.append(int(a))
count = input_list[0]
num_list = input_list[1:]
num_set = set(num_list)
num_list = list(num_set)
num_list.sort()
for _ in num_list:
print(_)
4. 字符串分隔
描述:输入一个字符串,请按长度为8拆分每个输入字符串并进行输出;
长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。
输入描述:连续输入字符串(每个字符串长度小于等于100)
输出描述:依次输出所有分割后的长度为8的新字符串
示例:
输入:abc
输出:abc00000
参考代码:
‘import sys
tmp_list = []
for line in sys.stdin:
a = line.split()[0]
tmp_list.append(a)
def fun(tmp_str):
count = len(tmp_str) // 8
mod = len(tmp_str) % 8
for _ in range(count):
print(tmp_str[ _ * 8: _ * 8 + 8])
if mod == 0:
return
zero_str = '0' * (8 - mod)
print(tmp_str[count * 8:] + zero_str)
for _ in tmp_list:
fun(_)
5. 进制转换
描述:写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。
输入描述:输入一个十六进制的数值字符串。
输出描述:输出该数值的十进制字符串。不同组的测试用例用\n隔开。
示例:
输入:0xAA
输出:170
参考代码:
import sys
tmp_list = []
for line in sys.stdin:
a = line.split()[0]
tmp_list.append(a)
for _ in tmp_list:
print(int(_,16))
6. 质数因子
描述
功能:输入一个正整数,按照从小到大的顺序输出它的所有质因子(重复的也要列举)(如180的质因子为2 2 3 3 5 )
输入描述: 输入一个整数
输出描述:按照从小到大的顺序输出它的所有质数的因子,以空格隔开。
示例:
输入:180
输出:2 2 3 3 5
参考代码:
import sys
tmp = None
for line in sys.stdin:
a = line.split()[0]
tmp = a
def prime_factors(n):
factors = []
i = 2
while i * i <= n:
if n % i:
i += 1
else:
n //= i
factors.append(i)
if n > 1:
factors.append(n)
return factors
result = prime_factors(int(tmp))
for _ in result:
print(_,end=' ')
7.取近似值
描述:写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于 0.5 ,向上取整;小于 0.5 ,则向下取整。
输入描述:输入一个正浮点数值
输出描述:输出该数值的近似整数值
示例:
输入:5.5
输出:6
说明:0.5>=0.5,所以5.5需要向上取整为6
参考代码:
import sys
tmp1 = None
tmp2 = None
for line in sys.stdin:
a = line.split()[0]
tmp1,tmp2 = a.split('.')
tmp1 = int(tmp1)
tmp2 = int(tmp2[0])
if tmp2 >= 5:
print(tmp1 + 1)
else:
print(tmp1)