解题思路:
先是自己动手画,结果视乎发现了点规律,不知道是否是真的,编代码,提交,真的AC了。然后再仔细分析,确实如此:
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块;
参考代码:
#include <stdio.h> int main() { int n,ans; int T; scanf("%d",&T); while(T--) { scanf("%d",&n); if(n%2==0) ans=4; else ans=n+3; printf("%d\n",ans); } return 0; }
0.0分
9 人评分
【蟠桃记】 (C语言代码)浏览:2220 |
C语言程序设计教程(第三版)课后习题8.9 (C语言代码)浏览:1710 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:701 |
C语言程序设计教程(第三版)课后习题7.4 (Java代码)浏览:840 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:583 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:466 |
校门外的树 (C语言代码)浏览:693 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:469 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:534 |
数组输出 (C语言代码)浏览:703 |