题干
Description
有一个 A×B 的大澡盆,还有若干个 a×b 的长方形小鸭子,澡盆里最少放几只鸭子后,便无法再向其中放入更多的鸭子?
鸭子很倔强,不能旋转成 b×a,也不能重叠放置。
Input
四个整数,分别表示 A,B,a,b
1<=a<=A<=30000
1<=b<=B<=30000
Ouput
最少能放几只鸭子。
思路
输出最少放多少小鸭子,也就是横着最少,竖着也最少,二者相乘就是答案。
如何最少:对于A边长来说,放一个a,空一个a-0.000…1就可以了,基本上就是放一个,留出来一块刚好放不下的空白,然后再放!
AC代码
import java.util.Scanner;public class DuckComing {public static void main(String[] args){Scanner scanner =new Scanner(System.in);Double A=scanner.nextDouble();Double B=scanner.nextDouble();Double a=scanner.nextDouble();Double b=scanner.nextDouble();scanner.close();int x=minNum(A,a);int y=minNum(B,b);System.out.println(x*y);}static int minNum(Double X,Double x){int count=0;while(X>=x){count+=1;X-=x;//放一个小鸭子X=X-x+0.000000001;//空一个位置刚好放不下小鸭子,然后再循环}return count;}
}