【每周一练】的第15期: 刷题统计
本帖最后由 元豪 于 2023-4-16 17:09 编辑注:解题自创,原题链接:https://www.luogu.com.cn/problem/P8780
大家好,今天是【每周一练】的第15期
这次的每周一练由我帮助用户 @高山 发帖
题目名称:
刷题统计
题目说明:
小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天做 a 道题目,周六和周日每天做 b 道题目。请你帮小明计算,按照计划他将在第几天实现做题数大于等于 n 题?
输入格式:
输入一行包含三个整数 a, b 和 n.
输出格式:
输出一个整数代表天数。
样例输入:
10 20 99
样例输出:
8
程序代码:
**** Hidden Message *****
static/image/hrline/1.gif
答题规则
如果你要经行答题,请遵守以下规则
1. 不可以先发回帖,再做题,直接发你的题解,否则无奖励
2. 不能抄题解,否则无奖励
3. 建议使用Python语言来做,否则奖励会打点折扣(你看看板块,就知道该用什么语言来做了)
4. 不能通过的代码,视为普通回帖,不会奖励。
奖励规则(奖励45天内有效)
1. 代码效率最优,选为最佳答案,并置项(15天以内)
2. 提供新的思路(加上代码),奖励 1 ~ 2 鱼币
3. 提供新的写法(思路可以一样),奖励 1 ~ 2 荣誉
4. 修正帖子错误,并提出解决方案,奖励1 ~ 2荣誉、1 ~ 2鱼币并且置项
5. 其余情况,在不违反答题规则的情况下,奖励 1 荣誉
6. 因为额度原因,部分鱼油可能下一天才能奖励。
static/image/hrline/1.gif
第一名:tommyyu帖子地址
第二名:lxping帖子地址
第三名:PS的名字帖子地址
上一期:【第14期】
下一期:【第16期】
@高山 @不二如是 @小伤口 @hveagle @zhangjinxuan
看看吧{:10_254:}评点分吧{:10_254:} 不戳啊 c = input()
d = c.split(" ")
a = int(d)
b = int(d)
n = int(d)
weeks = n // (5*a+2*b)
f = n - weeks*(5*a+2*b)
if f == 0:
x = 7*weeks
elif 0 < f < 5*a:
x = 7*weeks + f//a + 1
elif f == 5*a:
x = 7*weeks + 5
else:
x = 7*weeks + 5 + (f -5*a)//b + 1
print(x)
PS:题目存在2个“输入格式”,第二个应该为“输出格式”
lxping 发表于 2022-11-10 20:15
PS:题目存在2个“输入格式”,第二个应该为“输出格式”
看不懂嘎...{:10_282:} {:10_245:} 元豪 发表于 2022-11-11 17:10
看不懂嘎...
我发不了图片,你可以细读你下你的题目,上面写了2个“输入格式” lxping 发表于 2022-11-11 17:58
我发不了图片,你可以细读你下你的题目,上面写了2个“输入格式”
啊这...感谢指正! 怎么没了? a, b, n = input().split(); a, b, n = int(a), int(b), int(n)
nums = {1:a, 2:a, 3:a, 4:a, 5:a, 6:b, 7:b}
sum_ = 0
days = 1
sum_days = 0
while not(sum_ >= n):
days = (days-1)%7+1
sum_ += nums
days += 1; sum_days += 1
#print(sum_)
print(sum_days)
zhangjinxuan 发表于 2022-11-12 10:29
怎么没了?
审核,审核,没完没了的审核.... 鱼C有你更精彩 元豪,我认为呢排行不应该用发帖早晚决定,应该从 代码可读性、代码效率 等方面来进行排行,你觉得呢? 答案代码不会超时吗,神奇{:10_257:} zhangjinxuan 发表于 2022-11-19 08:56
答案代码不会超时吗,神奇
为啥会超时? zhangjinxuan 发表于 2022-11-19 08:55
元豪,我认为呢排行不应该用发帖早晚决定,应该从 代码可读性、代码效率 等方面来进行排行,你觉得呢?
哦~~ 元豪 发表于 2022-11-19 20:28
为啥会超时?
不好意思,看到 while 就感觉…… zhangjinxuan 发表于 2022-11-19 20:34
不好意思,看到 while 就感觉……
也不要把Python想的太慢~~~~ _ = input().split()
a, b, n, s, day = int(_), int(_), int(_), 0, 0
while s < n:
for i in range(1, 7+1):
if i <= 5:
s += a
day += 1
if s >= n:
print(day)
break
else:
s += b
day += 1
if s >= n:
print(day)
break
x=int(input("a道题目"))
y=int(input("b道题目"))
n=int(input("n题数量"))
day=1
ti=0
while ti < n:
if day%6!=0 and day%7!=0:
ti+=x
elifday%6==0 or day%7==0:
ti+=y
if ti >=n:
break
day+=1
print(day)
罗天才 发表于 2022-11-24 21:12
x=int(input("a道题目"))
y=int(input("b道题目"))
n=int(input("n题数量"))
要一行输入哦~~~
页:
[1]
2