洛谷P8780[蓝桥杯 2022 省 B] 刷题统计

题目描述

小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天做 a 道题目,周六和周日每天做 b 道题目。请你帮小明计算,按照计划他将在第几天实现做题数大于等于 n 题?

输入格式

输入一行包含三个整数 a, b 和 n.

输出格式

输出一个整数代表天数。

输入输出样例

输入:

10 20 99

输出:

思路

        为了不超时能顺利通过,我们可以把总的题数除以一个星期的刷题数,还剩下的题目用一个for循环即可计算出还需要的天数。

代码:

#include<bits/stdc++.h>
using namespace std;

int main() {
    long long a, b, n, s;
    cin >> a >> b >> n;
    s = 5 * a + 2 * b;    //一个星期刷题总量
 
    long long week = n / s * 7;  //计算出至少需要多少个星期天数
    n = n % s;                 //还剩下的题目数
    long long d[] = { a,a,a,a,a,b,b };  //每天的刷题数

    for (int i = 0; n > 0; i++) {
        n -= d[i];      //上方计算出了至少需要的星期数,这里便从星期一开始计算
        week++;        //需要一天便加上一天,直到题目刷完
    }

    cout << week << endl;
    return 0;
}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值