题目描述:
用边长小于N的正方形方砖(注意,不要求所有的方砖大小相同,请看样例说明)不重叠地铺满N*N的正方形房间,最少要几块方砖。
解题思路:
1.n是偶数时,都可以用4块边长为n/2的方砖填满;例如n=4时,可以用边长为2的4块方砖填满;n=6时,可以用边长为3的4块方砖填满;
2.n是奇数时,好好画一下,发现可以用n+3块方砖填满。例如:
(1)n为3时,用1块2*2的填,剩下都用5块1*1的填,共6块;
(2)n为5时,用1块3*3的填,剩下用3块2*2的填,4块用1*1的填,共8块;
(3)n为7时,用1块5*5的填,剩下用5块2*2的填,4块用1*1的填,共10块;
代码:
package lanqiao;
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
while(t != 0)
{
int n = sc.nextInt();
if(n % 2 == 0)
{
System.out.println(4);
}
else{
System.out.println(n + 3);
}
t --;
}
}
}