第一题:门牌制作
简单,这里只提供答案
答案:624
第二题:既约分数
思路:
用两个变量a,b分别代表分子和分母,双层for循环暴力解答。
答案:2481215
第三题:蛇形填数
思路1:找规律
思路2:
——阴影里数字可以理解为上坡和下坡,打印图案
代码:
#include<stdio.h>
int e[110][110];
int main()
{
int i,ha,li,p=1;
for(i=1;i<=100;i++)
{
if(i%2==1)//上坡
{
for(ha=i,li=1;ha>=1&&li<=i;ha--,li++)
e[ha][li]=p++;
}
else //下坡
{
for(ha=1,li=i;ha<=i&&li>=1;ha++,li--)
e[ha][li]=p++;
}
}
printf("%d\n",e[20][20]);
return 0;
}
第四题:跑步锻炼
答案:8879
思路:
——模拟日历一天天的过(循环)
代码:
#include<stdio.h>
int a[13]={-1000,31,28,31,30,31,30,31,31,30,31,30,31};
void judge(int y)
{
if((y%4==0&&y%100!=0)||y%400==0)
a[2]=29;
else
a[2]=28;
}
int main()
{
int y=2000,m=1,d=1,w=6,ans=0;
while(1)
{
if(d==1||w==1)
ans+=2;
else
ans++;
if(y==2020&&m==10&&d==1)
break;
judge(y);
d++;w++;
if(w>7)
w=1;
if(d>a[m])
{
d=1;
m++;
if(m>12)
{
m=1;
y++;
}
}
}
printf("%d\n",ans);
return 0;
}
第五题:七段码
比赛时错误思路:
——利用7个变量代表7个灯,7层for循环,之后去判断亮灯的周围是否也亮了灯,如果都未亮,该灯被孤立。否则灯是连在一块的(少数情况错误)。
——比如这三种情况: 01