题目描述
小明决定从下周一开始努力刷题准备蓝桥杯竞赛。他计划周一至周五每天做 a 道题目,周六和周日每天做 b 道题目。请你帮小明计算,按照计划他将在第几天实现做题数大于等于 n 题?
输入格式
输入一行包含三个整数 a, b 和 n.
输出格式
输出一个整数代表天数。
样例输入
复制
10 20 99
样例输出
复制
8
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long a = sc.nextLong();//1-5天每天a道题
long b = sc.nextLong();//6-7天每天b道题
long n = sc.nextLong();
long J = a*5+b*2;//一周的量
if( n < J) {//不超过一周
long cun = sy(n, a, b);
System.out.println(cun);
}
if( n >= J) {//能被7整除
if( n % J == 0) {
System.out.println((n/J)*7);
}
if( n % J != 0) {//超过一周且不能被7整除
long k = (n/J)*7;
long p = n-((n/J)*J);
k += sy(p, a, b);
System.out.println(k);
}
}
}
//做一个可以计算出一周内所有的情况的方法
public static int sy(long n,long a,long b) {
if( n <= a) {
return 1;
}
if( n > a && n <= a+a) {
return 2;
}
if( n > a+a && n <= a+a+a) {
return 3;
}
if( n > a+a+a && n <= a+a+a+a) {
return 4;
}
if( n > a+a+a+a && n <= a+a+a+a+a) {
return 5;
}
if( n > a+a+a+a+a && n <= a+a+a+a+a+b) {
return 6;
}
if( n > a+a+a+a+a+b && n < a+a+a+a+a+b+b) {
return 7;
}
return 1;
}
}