Java 洛谷 P1150 Peter的烟

题目链接:https://www.luogu.com.cn/problem/P1150

在这里插入图片描述

代码如下:

/** 
 * projectName: luogu 
 * fileName: P1150.java 
 * packageName: com.gxuwz.yixin 
 * date: 2021年11月28日上午9:30:07 
 */


import java.util.Scanner;

public class Main{
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		int n = scanner.nextInt(); // 香烟的个数
		int k = scanner.nextInt(); // 烟蒂的个数
		int result = n; // 将香烟的个数赋给 result
			
		int x = 1;
		x = n/k; 
		int yu = n%k; // 求余数
		
		while(x>0) { // 如果除数大于 0 证明可以换烟
			result += x; 
			x += yu; // 每次做除法的时候,可能还会剩一些烟蒂,比如例子中, 4/3 , 商1余1,也就是只能换1根,还剩一根烟蒂,那么这一根烟蒂要放到下一次计算中
			if(x>=k) { // 只有除数大于 烟蒂的个数时再算余数
				yu = x%k;
			}else {
				yu = 0;
			}
			x = x/k;
		}
		System.out.println(result);

	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梁同学与Android

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值