题目描述
小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天做 𝑎道题目,周六和周日每天做 𝑏 道题目。请你帮小明计算,按照计划他将在第几天实现做题数大于等于 𝑛 题?
输入格式
输入一行包含三个整数 𝑎,𝑏 和 𝑛.
输出格式
输出一个整数代表天数。
输入输出样例
输入 #1复制
10 20 99
输出 #1复制
8
说明/提示
对于 50%的评测用例,1≤𝑎,𝑏,𝑛≤10e6
对于 100% 的评测用例,1≤𝑎,𝑏,𝑛≤10e18
蓝桥杯 2022 省赛 B 组 C 题。
#include<iostream>
#include<cmath>
using namespace std;
typedef long long LL;
int main(){ //这题的时间复杂度为o(nln(n)) LL a,b,n,num=0,number1=0,number2=0,i=0;
cin>>a>>b>>n;LL weak=a*5+b*2; //先求一周完成多少题number1=n/weak;number2=n%weak;
if(number2<=5*a)cout<<(int)ceil(number2*1.0/a)+number1*7;
elsecout<<(int)ceil((number2-5*a)*1.0/b)+number1*7+5; //记得这边要向上取整
return 0;
}
这题最重要的一点就是时间复杂度,如果没有处理好就只有50
另外就是注意这边数据要用long long