【蓝桥杯】刷题统计(2022年省赛)

一、题目描述:

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

输入格式:

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

输出格式

输出一个整数代表天数

样例输入

10 20 99

样例输出

8

运行限制

最大运行时间:1s
最大运行内存: 256M

二、解题思路:

由于n的数据范围很大,直接写while循环会超时,所以得先计算一下需要几周,在单独计算还需要几天数

三、代码实现:

#include <iostream>
using namespace std;
typedef long long ll;
int main()
{
    
    
  // 请在此输入您的代码
  ll a,b,n,day = 0,sum;
  cin >> a >> b >> n;
  int tem = 5*a + 2*b;
  //至少需要的周数
  ll week = n/tem;
  //剩余的题
  ll last = n % tem;
  while(sum < last){
    
    
    day++;
    if(day % 7 != 0 && day % 8 != 0 )
      sum += a;
    else
      sum += b;
  }
  cout << week *7 + day;
  return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_62775411/article/details/129327530