文章目录
最大间隙
题目描述
给定一个序列 a1, a2,···,an。其中a1≤a2≤⋯≤an。
相邻两个数之间的差(后一个数减前一个数)称为它们的间隙。
请问序列中最大的间隙值是多少?
输入描述
输入的第一行包含一个整数 n,表示序列的长度。
第二行包含 nn 个正整数,为给定的序列。
其中,1≤n≤1000,1≤ai≤10^5。
输出描述
输出一个整数,表示序列中最大的间隙值。
输入输出样例
示例 1
输入
5
1 3 8 9 12
输出
5
运行限制
最大运行时间:1s
最大运行内存: 128M
分析
- 这个很好模拟,每个数取差,找最大即可
运行代码
n = int(input())
nums = list(map(int,input().split()))
MAX = 0
for i in range(n):
if i > 0:# 保证有两个数
if nums[i] - nums[i-1] > MAX:
MAX = nums[i] - nums[i-1]
print(MAX)
通过截图
成绩统计
题目描述
小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。
如果得分至少是 60 分,则称为及格。如果得分至少为 85 分,则称为优秀。
请计算及格率和优秀率,用百分数表示,百分号前的部分四舍五入保留整数。
输入描述
输入的第一行包含一个整数 n (1≤n≤10^4),表示考试人数。
接下来 n 行,每行包含一个 0 至 100 的整数,表示一个学生的得分。
输出描述
输出两行,每行一个百分数,分别表示及格率和优秀率。百分号前的部分四舍五入保留整数。
输入输出样例
示例
输入
7
80
92
56
74
88
100
0
输出
71%
43%
运行限制
最大运行时间:1s
最大运行内存: 256M
分析
- round没指定位数的时候,会自动四舍五入成整数,像如果要求百分号前的数四舍五入,先乘以100再四舍五入即可。
运行代码
import os
import sys
n = int(input())
youxiu = 0
jige = 0
for i in range(n):
t = int(input())
if t>= 60:
jige+=1
if t >= 85:
youxiu+=1
youxiu = youxiu/n
jige = jige/n
print(str(int(round(jige*100)))+"%")
print(str(int(round(youxiu*100)))+"%")
通过截图
如有错误,敬请指正,欢迎交流,谢谢♪(・ω・)ノ