蓝桥杯省赛|2014年第五届蓝桥杯C/C++程序设计本科B组省赛 7六角填数

六角填数
如图所示六角形中,填入1~12的数字。
使得每条直线上的数字之和都相同。
图中,已经替你填好了3个数字,请你计算星号位置所代表的数字是多少?
蓝桥杯省赛|2014年第五届蓝桥杯C/C++程序设计本科B组省赛 7六角填数
文章图片

【蓝桥杯省赛|2014年第五届蓝桥杯C/C++程序设计本科B组省赛 7六角填数】下面是本渣渣的AC代码。(纯暴力,逐渐喜欢上了暴力)

#include int main() { int n,m,k; for(int a1=2; a1<=12; a1++) { if(a1==1||a1==3||a1==8) continue; for(int a2=2; a2<=12; a2++) { if(a2==1||a2==3||a2==8) continue; for(int a3=2; a3<=12; a3++) { if(a3==1||a3==3||a3==8) continue; for(int a4=2; a4<=12; a4++) { if(a4==1||a4==3||a4==8) continue; for(int a5=2; a5<=12; a5++) { if(a5==1||a5==3||a5==8) continue; for(int a6=2; a6<=12; a6++) { if(a6==1||a6==3||a6==8) continue; for(int a7=2; a7<=12; a7++) { if(a7==1||a7==3||a7==8) continue; for(int a8=2; a8<=12; a8++) { if(a8==1||a8==3||a8==8) continue; for(int a9=2; a9<=12; a9++) { { if(a9==1||a9==3||a9==8) continue; if(((8+a5+a7+3)==(a1+a5+a6+1))&&((8+a5+a7+3)==(1+a2+a4+a9))&&((8+a5+a7+3)==(a3+a4+a8+3))&&(((8+a5+a7+3))==(8+a1+a2+a3))&&((8+a5+a7+3)==(a6+a7+a8+a9))&&a1!=a2&&a1!=a3&&a1!=a4&&a1!=a5&&a1!=a6&&a1!=a7&&a1!=a8&&a1!=a9&&a2!=a3&&a2!=a4&&a2!=a5&&a2!=a6&&a2!=a7&&a2!=a8&&a2!=a9&&a3!=a4&&a3!=a5&&a3!=a6&&a3!=a7&&a3!=a8&&a3!=a9&&a4!=a5&&a4!=a6&&a4!=a7&&a4!=a8&&a4!=a9&&a5!=a6&&a5!=a7&&a5!=a8&&a5!=a9&&a6!=a7&&a6!=a8&&a6!=a9&&a7!=a8&&a7!=a9&&a8!=a9 ) printf("%d\n",a5); } } } } } } } } } } }

    推荐阅读