蓝桥杯

    xiaoxiao2021-08-17  181

    标题:六角填数 如图所示六角形中,填入1~12的数字。 使得每条直线上的数字之和都相同。 图中,已经替你填好了3个数字,请你计算星号位置所代表的数字是多少? 请通过浏览器提交答案,不要填写多余的内容。

    最好理解但最麻烦的写法(一开始的)(⊙﹏⊙)b

    #include <stdio.h> int main() { int a,b,c,d,e,f,g,h,i; int x,y,z,u,v,w; for(a=2;a<=12;a++) { if(a==3||a==8)continue; for(b=2;b<=12;b++) { if(b==3||b==8||b==a)continue; for(c=2;c<=12;c++) { if(c==3||c==8||c==b||c==a)continue; for(d=2;d<=12;d++) { if(d==3||d==8||d==c||d==b||d==a)continue; for(e=2;e<=12;e++) { if(e==3||e==8||e==d||e==d||e==c||e==b||e==a)continue; for(f=2;f<=12;f++) { if(f==3||f==8||f==a||f==b||f==c||f==d||f==e)continue; for(g=2;g<=12;g++) { if(g==3||g==8||g==a||g==b||g==c||g==d||g==e||g==f)continue; for(h=2;h<=12;h++) { if(h==3||h==8||h==a||h==b||h==c||h==d||h==e||h==f||h==g)continue; for(i=2;i<=12;i++) { if(i==3||i==8||i==a||i==b||i==c||i==d||i==e||i==f||i==g||i==h)continue; x=1+a+d+f; y=8+a+b+c; z=1+b+e+i; u=c+e+h+3; v=f+g+h+i; w=8+d+g+3; if(x==y&&x==z&&x==u&&x==v&&x==w) { printf(" 1\n"); printf("8 %d %d %d\n",a,b,c); printf(" %d\t%d\n",d,e); printf("%d %d %d %d\n",f,g,h,i); printf(" 3\n\n"); } } } } } } } } } } }
    转载请注明原文地址: https://ju.6miu.com/read-676559.html

    最新回复(0)