一、题目描述
小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天做 a 道题目,周六和周日每天做
b 道题目。请你帮小明计算,按照计划他将在第几天实现做题数大于等于 n 题?
C++程序要求输入输出格式如下:
输入格式
输入一行包含三个整数 a,b 和 n.
输出格式
输出一个整数代表天数。
示例如下:
输入:10 20 99 输出:8
二、思路
题目非常简单,直接枚举;用factday记录当前是星期几,然后利用取余+1的操作来更新星期几;根据评测要求的数据范围,用long long型来定义数据类型,
三、C++代码
#include<bits/stdc++.h>
using namespace std;
// 刷题统计
int main(){
long long a,b,n;
cin>>a>>b>>n;
long long days=0; //记录天数
long sum=0; //记录所做题目数量之和
long factday=1; //记录当前是星期几
while (sum < n) {
if (factday >= 6) {
sum += b; // 周末
}else {
sum += a; // 工作日
}
factday = factday % 7 + 1;
++days;
}
cout<<days;
}