元豪 发表于 2022-11-9 18:44:02

【每周一练】的第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期】




元豪 发表于 2022-11-9 19:11:32

@高山 @不二如是 @小伤口 @hveagle @zhangjinxuan
看看吧{:10_254:}评点分吧{:10_254:}

高山 发表于 2022-11-10 19:07:04

不戳啊

lxping 发表于 2022-11-10 20:15:54

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个“输入格式”,第二个应该为“输出格式”


元豪 发表于 2022-11-11 17:10:22

lxping 发表于 2022-11-10 20:15
PS:题目存在2个“输入格式”,第二个应该为“输出格式”

看不懂嘎...{:10_282:} {:10_245:}

lxping 发表于 2022-11-11 17:58:47

元豪 发表于 2022-11-11 17:10
看不懂嘎...

我发不了图片,你可以细读你下你的题目,上面写了2个“输入格式”

元豪 发表于 2022-11-11 19:02:31

lxping 发表于 2022-11-11 17:58
我发不了图片,你可以细读你下你的题目,上面写了2个“输入格式”

啊这...感谢指正!

zhangjinxuan 发表于 2022-11-12 10:29:08

怎么没了?

tommyyu 发表于 2022-11-13 12:59:14

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)

元豪 发表于 2022-11-13 13:09:03

zhangjinxuan 发表于 2022-11-12 10:29
怎么没了?

审核,审核,没完没了的审核....

lcs89 发表于 2022-11-13 13:20:06

        鱼C有你更精彩

zhangjinxuan 发表于 2022-11-19 08:55:33

元豪,我认为呢排行不应该用发帖早晚决定,应该从 代码可读性、代码效率 等方面来进行排行,你觉得呢?

zhangjinxuan 发表于 2022-11-19 08:56:28

答案代码不会超时吗,神奇{:10_257:}

元豪 发表于 2022-11-19 20:28:22

zhangjinxuan 发表于 2022-11-19 08:56
答案代码不会超时吗,神奇

为啥会超时?

元豪 发表于 2022-11-19 20:29:06

zhangjinxuan 发表于 2022-11-19 08:55
元豪,我认为呢排行不应该用发帖早晚决定,应该从 代码可读性、代码效率 等方面来进行排行,你觉得呢?

哦~~

zhangjinxuan 发表于 2022-11-19 20:34:18

元豪 发表于 2022-11-19 20:28
为啥会超时?

不好意思,看到 while 就感觉……

元豪 发表于 2022-11-20 07:05:27

zhangjinxuan 发表于 2022-11-19 20:34
不好意思,看到 while 就感觉……

也不要把Python想的太慢~~~~

PS的名字 发表于 2022-11-20 09:16:05

_ = 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

罗天才 发表于 2022-11-24 21:12:47

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-25 16:43:13

罗天才 发表于 2022-11-24 21:12
x=int(input("a道题目"))
y=int(input("b道题目"))
n=int(input("n题数量"))


要一行输入哦~~~
页: [1] 2
查看完整版本: 【每周一练】的第15期: 刷题统计