原题传送门 -> https://ac.nowcoder.com/acm/problem/54838

my blog -> https://blog.nowcoder.net/yanhaoyang2106

题目描述

wegfan非常喜欢吃面包,放假时,wegfan决定把自己的所有零花钱a拿出来去买面包。一个面包的价钱是b元,由于wegfan买的面包特别多,老板决定给他点优惠:当wegfan每买c个面包时,老板就会送他d个面包。wegfan非常开心,但他不知道自己能得到几个面包,请你帮助他计算一下能得到多少个面包。

输入描述:

第一行是一个整数T,代表有T组数据。

每组数据输入4个整数a,b,c,d。含义如题所述。

输出描述:

每行输出一个整数,表示wegfan能得到的面包数。

示例1

输入

1

10 1 1 1

输出

20

思路

注意用long long,否则溢出

代码

#include <iostream>
using namespace std;

int main()
{
    long long T, a, b, c, d;
    cin >> T;
    while(T --){
        cin >> a >> b >> c >> d;
        cout << a / b + a / b / c * d << endl;
    }
    return 0;
}