学习Python从娃娃抓起!记录下蓝桥杯备考学习过程中的题目,记录每一个瞬间。
附上汇总贴:历年蓝桥杯Python青少组中/高级选拔赛(STEMA)真题解析 | 汇总
【题目描述】
小蓝有一个充电器,可以使用不同的电压和电流充电。
给定充电器工作的记录,请计算在这个记录期间总共通过充电传输了多少电能。
【输入】
输入第一行包含一个整数n,表示记录的条数。
接下来n行,每行包含一个时刻T和两个非负整数U,I,表示在时刻T充电电压变为U(单位伏),电流变为I(单位A)。最后一行满足U和I均为0,在前面的行中也可能出现U、I为0的情况。其中时间表示为HH:MM:SS的格式,时分秒分别用两位十进制数表示(补前导零)。
输入保证时刻依次递增且在00:00:00至23:59:59的区间内,不用考虑过零点充电的情况。
【输出】
输出一个整数,表示总共通电的电能为多少焦耳,其中1焦耳等于1伏乘以1安乘以1秒。
【输入样例】
3
12:00:00 12 1
12:01:02 5 2
12:01:10 0 0
【输出样例】
824
【代码详解】
n = int(input())
class charge:
def __init__(self):
self.t = 0
self.u = 0
self.v = 0
a = [charge() for i in range(105)]
for i in range(1, n+1):
t, u, v = [i for i in input().split()]
ls = [i for i in t.split(':')]
t = int(ls[0])*3600+int(ls[1])*60+int(ls[2])
u = int(u)
v = int(v)
a[i].t = t
a[i].u = u
a[i].v = v
ans = 0
for i in range(1, n):
ans += (a[i+1].t - a[i].t) * a[i].u * a[i].v
print(ans)
【运行结果】
824