33,321
社区成员




#include <stdio.h>
//检查数字是否在1~5
int checkOK(int num){
if(num>0&&num<6) return 1;
return 0;
}
//12345 随意填入九宫格 横竖相加都是8
void main(){
int Nine[3][3]={0};
int index=0;
for(int i1=1;i1<6;i1++){
Nine[0][0]=i1;
for(int i2=1;i2<6;i2++){
Nine[0][1]=i2;
for(int i3=1;i3<6;i3++){
Nine[1][0]=i3;
for(int i4=1;i4<6;i4++){
Nine[1][1]=i4;
Nine[0][2]=8-Nine[0][0]-Nine[0][1];
if(checkOK(Nine[0][2])==0) continue;
Nine[1][2]=8-Nine[1][0]-Nine[1][1];
if(checkOK(Nine[1][2])==0) continue;
Nine[2][0]=8-Nine[0][0]-Nine[1][0];
if(checkOK(Nine[2][0])==0) continue;
Nine[2][1]=8-Nine[0][1]-Nine[1][1];
if(checkOK(Nine[2][1])==0) continue;
if((8-Nine[2][0]-Nine[2][1])==(8-Nine[0][2]-Nine[1][2])){
Nine[2][2]=8-Nine[2][0]-Nine[2][1];
if(checkOK(Nine[2][2])==0) continue;
}
printf("%d,%d,%d\n",Nine[0][0],Nine[0][1],Nine[0][2] );
printf("%d,%d,%d\n",Nine[1][0],Nine[1][1],Nine[1][2] );
printf("%d,%d,%d\n",Nine[2][0],Nine[2][1],Nine[2][2] );
printf("------------------\n");
index++;
}
}
}
}
printf("%d\n",index);
}
#include <stdio.h>
#include <algorithm>
#include <string>
int main()
{
int n = 1, t[18][3] = {{1,2,5},{1,3,4},{1,4,3},{1,5,2},{2,1,5},{2,2,4},{2,3,3},{2,4,2},{2,5,1},
{3,1,4},{3,2,3},{3,3,2},{3,4,1},{4,1,3},{4,2,2},{4,3,1},{5,1,2},{5,2,1}};
std::string b(3, 1); b.resize(18, 0);
do {
int x[3] = {0};
for (int i = 0, p = 0; i < 18; i++)
if (b[i]) {x[p] = i; p++;}
if ((t[x[0]][0] + t[x[1]][0] + t[x[2]][0] == 8) &&
(t[x[0]][1] + t[x[1]][1] + t[x[2]][1] == 8) &&
(t[x[0]][2] + t[x[1]][2] + t[x[2]][2] == 8))
printf("%d:\n%d %d %d\n%d %d %d\n%d %d %d\n\n", n++, t[x[0]][0], t[x[0]][1], t[x[0]][2],
t[x[1]][0], t[x[1]][1], t[x[1]][2], t[x[2]][0], t[x[2]][1], t[x[2]][2]);
} while (std::prev_permutation(b.begin(), b.end()));
return 0;
}
#include "stdafx.h"
#include "iostream"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
const int ArrNum[] = { 1, 2, 3, 4, 5 };
for (int i11 = 0; i11 < 5; i11++)
for (int i12 = 0; i12 < 5; i12++)
for (int i13 = 0; i13 < 5; i13++)
for (int i21 = 0; i21 < 5; i21++)
for (int i22 = 0; i22 < 5; i22++)
for (int i23 = 0; i23 < 5; i23++)
for (int i31 = 0; i31 < 5; i31++)
for (int i32 = 0; i32 < 5; i32++)
for (int i33 = 0; i33 < 5; i33++)
{
if (ArrNum[i11] + ArrNum[i12] + ArrNum[i13] == 8 &&
ArrNum[i21] + ArrNum[i22] + ArrNum[i23] == 8 &&
ArrNum[i31] + ArrNum[i32] + ArrNum[i33] == 8 &&
ArrNum[i11] + ArrNum[i21] + ArrNum[i31] == 8 &&
ArrNum[i12] + ArrNum[i22] + ArrNum[i32] == 8 &&
ArrNum[i13] + ArrNum[i23] + ArrNum[i33] == 8)
{
cout << ArrNum[i11] << "," << ArrNum[i12] << "," << ArrNum[i13] << endl;
cout << ArrNum[i21] << "," << ArrNum[i22] << "," << ArrNum[i23] << endl;
cout << ArrNum[i31] << "," << ArrNum[i32] << "," << ArrNum[i33] << endl;
cout << "----------------" << endl;
}
}
system("pause");
return 0;
}