群裡的網友拋出了這樣一道題
我的算法:
static void Main(string[] args)
{
/*
* a + b - 9 = 4
* + - -
* c - d * e =4
* / * -
* f + g - h=4
* || || ||
* 4 4 4
* */
int flag = 50;
for(int a=0;a<14; a++) //a
{
for (int b = 0; b <14; b++) //b
{
//a+b-9=4 故 a+b=13
if ((a + b) == 13)
{
//9-e-h=4 故 e+h=5, e<6,h<6
for (int e = 0; e < 6; e++) //e
{
for (int h = 0; h < 6; h++) //h
{
if ((e + h) == 5)
{
for (int c = 0; c < flag; c++) //c
{
//b-d*g=4,b[0-13] 故d*g<10,d,g<10
for (int d = 0; d < 10; d++) //d d*g<=9
{
for (int g = 0; g < 10; g++) //g
{
//考慮到f為被除數,故f>0,考慮整除c%f==0
for (int f = 1; f < flag; f++) //f
{
while ((c % f )== 0&&(c - d * e) == 4 && (f + g - h) == 4 && (a + c / f) == 4 && (b - d * g) == 4)
{
Console.WriteLine("----------------------------------");
Console.Write("a:{0} ", a.ToString());
Console.Write("b:{0} ", b.ToString());
Console.Write("c:{0} ", c.ToString());
Console.Write("d:{0} ", d.ToString());
Console.Write("e:{0} ", e.ToString());
Console.Write("f:{0} ", f.ToString());
Console.Write("g:{0} ", g.ToString());
Console.WriteLine("h:{0} ", h.ToString());
Console.WriteLine("----------------------------------");
Console.ReadLine();
}
}
}
}
}
}
}
}
}
}
}
}