每日一道算法题之刷题统计
- 一、题目描述
- 二、思路
- 三、C++代码
一、题目描述
题目来源:洛谷
小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天做 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;
}