每日蓝桥 .1 2023.07.23

  1. 问题描述

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

输入格式
输入一行包含三个整数 a,b 和 n.

评测用例规模与约定

对于 50 %的评测用例1≤a,b,n≤10的6次方

对于 100 \%100% 的评测用例, 1≤a,b,n≤10的18次方

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

来源 :蓝桥云课

//本题注意一下,由于n的数据范围很大,直接写while循环会超时,所以得先计算一下需要几周。
//然后再注意一下剩余几天就可以了。
代码如下:
#include<iostream>
#include<algorithm>
#include<math.h>
typedef long long ll; //作用就是可以用ll定义数据类型,没有其他作用
using namespace std;
ll week,i,a,b,m,n,day,count,last;
int main()
{
	cin>>a>>b>>n; //分别输入a,b,n
	week=n/(5*a+2*b); //首先计算出有多少个整周
	last=n%(5*a+2*b); //计算余数(不足一周) last<7
	day=week*7; //计算整周一共有多少天
	int x=1; //相当于星期几
	while(last>0)
	{
		if(x%7==6)last-=b; //如果结果为6,则执行需要减去b
		else last-=a;  //其余则是减去a
		day++; //循环一次,天数增加一天
		x++;   
	}
	cout<<day<<endl;  //输出结果
	return 0;
}
样例及结果
10 20 99
8

--------------------------------
Process exited after 5.002 seconds with return value 0
请按任意键继续. . .


 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值