目录
001:字符菱形
描述:给定一个字符,用它构造一个对角线长5个字符,倾斜放置的菱形。
输入:输入只有一行,包含一个字符。
输出:该字符构成的菱形。
输入样例1
*
输出样例1
* *** ***** *** *
char = input()
print(' ' * 2 + char)
print(' ' + char * 3)
print(char * 5)
print(' ' + char * 3)
print(' ' * 2 + char)
002:输出第二个整数
描述:输入三个整数,把第二个输入的整数输出。
输入:输入只有一行,共三个整数,整数之间由一个空格分隔。整数时32为有符号整数。
输出:只有一行,一个整数,即输入的第二个整数。
输入样例1
123 456 789
输出样例1
456
# 读取输入的三个整数
a, b, c = map(int, input().split())
# 输出第二个整数
print(b)
003:求三个数的和
描述:输入三个整数或小数,输出它们的和;如果结果是整数,就保留小数点后面一位的0;请注意:本题应该用float对三个数进行转换
输入:输入三个整数或小数
输出:和
输入样例 1
1 2.3 4.7
输出样例 1
8.0
num1, num2, num3 = map(float, input().split())
sum = num1 + num2 + num3
if sum.is_integer():
print(f'{sum:.1f}')
else:
print(sum)
004:字符串交换
描述:输入两个长度为4的字符串,交换这两个字符串的前两个字符后输出
输入:两个长度为4的字符串
输出:交换这两个字符串的前两个字符后输出
输入样例1
ABCD 1234
输出样例1
12CD AB34
a=input()
b=input()
c=b[:2]+a[2:]
d=a[:2]+b[2:]
print(c)
print(d)
005:字符串中的整数求和
描述:输入两个长度为3的字符串,每个串前两个字符是数字,后一个字符是字母。 求这两个串中的整数的和。
输入:一行,两个字符串
输出:两个字符串中整数的和
输入样例 1
12B 34D
输出样例 1
46
a,b=input().split()
c=int(a[:2])+int(b[:2])
print(c)
006:字符三角形
描述:给定一个字符,用它构造一个底边长5个字符,高3个字符的等腰字符三角形。
输入:输入只有一行,包含一个字符。
输出:该字符构成的等腰三角形,底边长5个字符,高3个字符。
输入样例 1
*
输出样例 1
* *** *****
char = input()
print(' ' * 2 + char)
print(' ' + char * 3)
print(char * 5)
007: 计算(a+b)*c的值
描述:给定3个整数a、b、c,计算表达式(a+b)*c的值。
输入:输入仅一行,包括三个整数a、b、c, 数与数之间以一个空格分开。
(-10,000 < a,b,c < 10,000)
输出:输出一行,即表达式的值
输入样例 1
2 3 5
输出样例 1
25
a,b,c=map(int,input().split())
print((a+b)*c)
008:反向输出一个三位数
描述:将一个三位数反向输出
输入:一个三位数n
输出:反向输出n
输入样例 1
100
输出样例 1
001
n = input()
a = n[::-1]
print(a)
009:判断子串
描述:输入两行字符串,要求判断第一行 字符串是不是第二行的子串
输入:两行字符串。字符串长度不超过100。
输出:如果第一行是第二行的子串,就输出 "YES",否则输出"NO"
输入样例 1
hello world this is hello world, it is ok.
输出样例 1
YES
a=input()
b=input()
if a in b:
print("YES")
else:
print("NO")
010:计算2的幂
描述:给定非负整数n,求2^n。
输入:一个整数n。0 <= n < 31。
输出:一个整数,即2的n次方。
输入样例 1
3
输出样例 1
8
n=int(input())
if 0<=n<31:
a=2**n
print(a)
011:计算多项式的值
描述:对于多项式f(x) = ax^3+ bx^2+ cx + d 和给定的a, b, c, d, x,计算f(x)的值。
输入:输入仅一行,包含5个实数,分别是x,及参数a、b、c、d的值,每个数都是绝对值不超过100的双精度浮点数。数与数之间以一个空格分开。
输出:输出一个实数,即f(x)的值,保留到小数点后7位。
输入样例 1
5 1.2 2.2 3.2 4.2
输出样例 1
225.2000000
x, a, b, c, d = map(float, input().split())
result = a*x**3 + b*x**2 + c*x + d
print("{:.7f}".format(result))
012:点和正方形的关系
描述:有一个正方形,四个角的坐标(x,y)分别是(1,-1),(1,1),(-1,-1),(-1,1),x是横轴,y是纵轴。写一个程序,判断一个给定的点是否在这个正方形内(包括正方形边界)。
输入:输入一行,包括两个整数x、y,以一个空格分开,表示坐标(x,y)。
输出:输出一行,如果点在正方形内,则输出yes,否则输出no。
输入样例 1
1 1
输出样例 1
yes
# 输入坐标
x, y = map(int, input().split())
# 判断点是否在正方形内
if -1 <= x <= 1 and -1 <= y <= 1:
print("yes")
else:
print("no")
013:奇偶数判断
描述:给定一个整数,判断该数是奇数还是偶数。
输入:输入仅一行,一个大于零的正整数n。
输出:输出仅一行,如果n是奇数,输出odd;如果n是偶数,输出even。
输入样例 1
5
输出样例 1
odd
n=int(input())
if n%2==0:
print("even")
else:
print("odd")
014:计算邮资
描述:根据邮件的重量和用户是否选择加急计算邮费。计算规则:重量在1000克以内(包括1000克), 基本费8元。超过1000克的部分,每500克加收超重费4元,不足500克部分按500克计算;如果用户选择加急,多收5元。
输入:输入一行,包含整数和一个字符,以一个空格分开,分别表示重量(单位为克)和是否加急。如果字符是y,说明选择加急;如果字符是n,说明不加急。
输出:输出一行,包含一个整数,表示邮费。
输入样例 1
1200 y
输出样例 1
17
# 读取输入的重量和是否加急
weight, express = input().split()
weight = int(weight)
# 初始化基本费和超重费
basic_fee = 8
extra_fee_per_500g = 4
# 计算超重部分费用
if weight <= 1000:
total_fee = basic_fee
else:
extra_weight = weight - 1000
extra_fee = (extra_weight + 499) // 500 * extra_fee_per_500g
total_fee = basic_fee + extra_fee
# 如果加急,额外收取5元
if express == 'y':
total_fee += 5
# 输出结果
print(total_fee)
015:分段函数
描述
编写程序,计算下列分段函数y=f(x)的值。
y=-x+2.5; 0 <= x < 5
y=2-1.5(x-3)(x-3); 5 <= x < 10
y=x/2-1.5; 10 <= x <= 20
输入
一个浮点数N,0 <= N < =20
输出
输出N对应的分段函数值:f(N)。结果保留到小数点后三位。
输入样例 1
1.0
输出样例 1
1.500
N=float(input())
if 0<=N and N<5:
y=-N+2.5
elif 5<=N and N<10:
y=2-1.5*(N-3)*(N-3)
elif 10<=N and N<=20:
y=N/2-1.5
print("{:.3f}".format(y))
016:三角形判断
描述
给定三个正整数,分别表示三条线段的长度,判断这三条线段能否构成一个三角形。
输入
输入共一行,包含三个正整数,分别表示三条线段的长度,数与数之间以一个空格分开。
输出
如果能构成三角形,则输出“yes” ,否则输出“no”。
输入样例 1
3 4 5
输出样例 1
yes
a,b,c=map(int,input().split())
if a+b>c and b+c>a and a+c>b:
print("yes")
else:
print("no")
017:苹果和虫子
描述
你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果?
输入
输入仅一行,包括n,x和y(均为整数)。
输出
输出也仅一行,剩下的苹果个数
输入样例 1
10 4 9
输出样例 1
7
提示
注意:是要求完整的苹果数
n,x,y=map(int,input().split())
if y%x==0:
a=n-y//x
print(a)
else:
a=n-1-y//x
print(a)
018:简单计算器
描述
一个最简单的计算器,支持+, -, *, / 四种运算。仅需考虑输入输出为整数的情况(除法结果就是商,忽略余数)
输入
输入只有一行,共有三个参数,其中第1、2个参数为整数,第3个参数为操作符(+,-,*,/)。
输出
输出只有一行,一个整数,为运算结果。然而:
1. 如果出现除数为0的情况,则输出:Divided by zero!
2. 如果出现无效的操作符(即不为 +, -, *, / 之一),则输出:Invalid operator!
输入样例 1
1 2 +
输出样例 1
1 2 +
# 读取输入的三个参数
a, b, operator = input().split()
# 将参数a和b转换为整数
a = int(a)
b = int(b)
# 根据操作符进行相应的运算
if operator == '+':
result = a + b
elif operator == '-':
result = a - b
elif operator == '*':
result = a * b
elif operator == '/':
if b == 0:
result = 'Divided by zero!'
else:
result = a // b # 只保留商,忽略余数
else:
result = 'Invalid operator!'
# 输出结果
print(result)
019:求整数的和与均值
描述
读入n(1 <= n <= 10000)个整数,求它们的和与均值。
输入
输入第一行是一个整数n,表示有n个整数。
第2~n+1行每行包含1个整数。每个整数的绝对值均不超过10000。
输出
输出一行,先输出和,再输出平均值(保留到小数点后5位),两个数间用单个空格分隔。
输入样例 1
4 344 222 343 222
输出样例 1
1131 282.75000
n=int(input())
sum=0
for i in range(n):
sum += int(input())
average=sum/n
print("%d %.5f" %(sum,average))
020:整数序列的元素最大跨度值
描述
给定一个长度为n的非负整数序列,请计算序列的最大跨度值(最大跨度值 = 最大值减去最小值)。
输入
一共2行,第一行为序列的个数n(1 <= n <= 1000),第二行为序列的n个不超过1000的非负整数,整数之间以一个空格分隔。
输出
输出一行,表示序列的最大跨度值。
输入样例 1
6 3 0 8 7 5 9
输出样例 1
9
n=int(input())
s=input().split()
Max=Min=int(s[0])
for i in range(len(s)):
Max=max(Max,int(s[i]))
Min=min(Min,int(s[i]))
m=Max-Min
print(m)
021:奥运奖牌计数
描述
2008年北京