(注 input()输入函数的括号中不允许添加任何信息) 编程实现:
给定一个正整数N,输出N个连续星号 ”*”
输入描述
输入一个正整数N,表示星号的个数
输出描述
输出N个连续星号
# 2203PC01
N = int(input())
for i in range(0,N):
print("*", end="")
(注 input()输入函数的括号中不允许添加任何信息)
编程实现:
给定一个小写字母,输出其对应的大写字母。
输入描述
输入一个小写字母
输出描述
输出小写字母对应的大写字母
# 2203PC02
s = input()
print(s.upper())
(注 input()输入函数的括号中不允许添加任何信息)
编程实现:
给定一个正整数N,和M个不同的正整数。然后将M个正整数中任意两个数进行组合,且求出每组组合的和.问M个正整数中有多少组组合的和恰好等于N。
如:正整数N为6,M为5,5个不同的正整数分别为1,2,3,4,5。
任意两数组合有10组:1+2,1+3,1+4,1+5,2+3,2+4,2+5,3+4,3+5,4+5
其中和正好等于6的组合有2组:1+5,2+4
输入描述
第一行输入一个正整数N
第二行输入M个不同的正整数,且正整数之间以一个英文逗号隔开
输出描述
输出M个不同的正整数中有多少组组合的和恰好等于N
样例输入
5
1,2,3,4,5
样例输出
2
# 2203PC03
from itertools import combinations
N = int(input())
num_list = input().split(",")
num_list = [int(i) for i in num_list]
total = 0
for coupe in combinations(num_list,2):
if sum(coupe) == N:
total += 1
print(total)
编程实现:
有N个小朋友从左到右排成一排,每个小朋友手中都有一定数量的糖果,且糖果总数量是N的倍数。
计算出最少调整几次可以使每个小朋友手中的糖果数量都相同。
调整规则如下:
- 规则1:每个小朋友的糖果只能调整到左右相邻的两个小朋友手中;
- 规则2:第一个小朋友的糖果只能调整到第二个小朋友手中;
- 规则3:最后一个小朋友的糖果,只能调整到倒数第二个小朋友手中。
糖果数量: 6 4 ... ... 2
编号: 1 2 ... ... N
例如:1-3号小朋友手中原有的糖果数量分别为6, 4, 2
- 1号小朋友拿出两块给2号小朋友;
- 2号小朋友拿出两块给3号小朋友;
两次调整后三个小朋友手中的糖果分别为4, 4, 4.
即按照调整规则最少操作2次可以使3个小朋友手中糖果数量都相同。
现按照顺序给出第1~N个小朋友手中原有糖果数量,按照调整规则计算出最少调整几次可以使N个小朋友手中的糖果数量都相同。
输入描述
输入N个正整数(1<正整数<100),表示从1到N号小朋友手中原有糖果数量,正整数之间以一个英文逗号隔开,且所有正整数之和是N的倍数。
输出描述
按照调整规则计算出最少操作几次可以使N个小朋友手中糖果数量都相同。
样例输入
6, 4, 2
样例输出
2
# 2203PC04
num_list = input().split(",")
num_list = [int(i) for i in num_list]
step = 0
max_num = max(num_list)
count = len(num_list)
avg = sum(num_list) // count
# 从左到右
for i in range(count):
if num_list[i] > avg and i<=count-2:
step += 1
need = (count-i-1)*avg - sum(num_list[i+1:])
if need >= (num_list[i] - avg):
num_list[i+1] += num_list[i] - avg
num_list[i] = avg
else:
num_list[i+1] += need
num_list[i] -= need
# 从右到左
for i in range(count):
if num_list[count-i-1] > avg and i<=count-2:
step += 1
need = (count-i-1)*avg - sum(num_list[:count-i-1])
if need >= (num_list[count-i-1] - avg):
num_list[count-i-2] += num_list[count-i-1] - avg
num_list[count-i-1] = avg
else:
num_list[count-i-2] += need
num_list[count-i-1] -= need
# print(num_list)
print("调整次数:", step)