题目
小度最喜欢吃糖啦!!!
这天商店糖果促销,可给小度高兴坏了。
促销规则:一颗糖果有一张糖纸,*p* 张糖纸可以换取一颗糖果。换出来糖果的包装纸当然也能再换糖果。
小度想吃 *k* 颗糖果,他需要买多少颗糖?
输入格式:
第一行一个整数 )*T*(1≤*T*≤106) ,表示测试数据组数;
接下来T*行,每行两个整数 p,k,1≤pi≤109,0≤ki≤109) ,表示第 i 次测试中,p**i* 张糖纸换一颗糖,小度想吃 *k**i* 颗糖。
输出格式:
*T* 行,每行一个整数表示需要买多少颗糖果。
题解(JAVA)
import java.util.Scanner;
import java.util.*;
class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int n = input.nextInt();
for (int j = 0; j < n; j++) {
int p = input.nextInt();
int k = input.nextInt();
if (k == 0)
System.out.println("0");
else {
System.out.println(k - (k - 1) / p);
}
}
}
}
整个过程中一定有k个糖纸(因为有k个糖),且最后手里一定有至少一张纸。所以这些纸能换的糖为(k - 1) / p,要买的就是k - (k - 1) / p。