Advertisement

11月上海月赛题解报告(丙组)T2

阅读量:

大胃王

内存限制: 512 Mb时间限制: 1000 ms

题目描述

Bob 的同事向 Bob 发出了大胃王挑战:“如果你吃了超过 x 个包子,那你每多吃一个,我就给你 55 元。“

例如,如果 x=5 且 Bob 吃了 8 个包子,那么他会收到 15 元,因为他吃了 3 个额外的包子。

你知道包子店里每笼都有 y 个包子,也知道 Bob 最终收到了同事给出的 r 元,请问 Bob 最多能点几笼包子?

Bob 在吃完一笼包子里的所有包子前不会点一笼新的包子,但是 Bob 可能没有把最后一笼包子全部吃光。

输入格式

第一行一个整数 T 表示数据组数。

接下来 T 行,每行三个整数 x,y,r,含义如题。

输出格式

共 T 行,每行一个整数表示答案。

数据范围

对于 30% 的数据,T=1,x≤10,y=1。

对于 60% 的数据,T=1,x≤10。

对于 100% 的数据,1≤T≤104,1≤x≤100,1≤y≤10,0≤r≤5000 且保证 r 是 5 的倍数。

样例数据

输入:

5
10 1 5
10 10 5
100 2 30
10 2 35
100 2 40

输出:

11
2
53
54
54

说明:

对于第一组数据,Bob 收到了5元,这说明他吃了1个额外的包子,一共吃了10+1=11个包子,每一笼包子只有一个,于是 Bob 最多点了11笼包子。

先求主要吃多少个包子,再求能点几笼

AC代码
复制代码
>       1. #include<bits/stdc++.h>

>  
>       2. using namespace std;
>  
>       3. int main(){
>  
>       4.   int t;
>  
>       5.   cin>>t;
>  
>       6.   while(t--){
>  
>       7.     long long x,y,r;
>  
>       8.     scanf("%lld%lld%lld",&x,&y,&r);
>  
>       9.     long long i=x+r/5;
>  
>       10.     printf("%lld\n",(i+y-1)/y);
>  
>       11.   }
>  
>       12.   return 0;
>  
>       13. }
>  
>  
>  
>  
>     cpp
>  
>     
>  
>     ![](https://ad.itadn.com/c/weblog/blog-img/images/2025-07-13/QWREkYdva5T6GAmP4elNupxCb7sU.png)

全部评论 (0)

还没有任何评论哟~