#include <stdio.h>
#include <math.h>
#define TheBigNumber 9999999 //出错信息
#define Epslon 0.0000000001
typedef double (*pfddd)( double, double);
double add( double, double);
double sub( double, double);
double mult( double, double);
double div( double, double);
void convert( char, int);
int cardsnum[4];
int is24 (double x) { return fabs(x - 24) < Epslon ; }
void test( char a, char b, char c, char d) {
pfddd f[4] = {add, sub, mult, div};
char o[4] = {'+', '-', '*', '/'};
int i, j, k, l, m, n;
convert( a, 0);
convert( b, 1);
convert( c, 2);
convert( d, 3);
for (i = 0; i < 4; ++i)
for (j = 0; j < 4; ++j) {
if (j == i)
continue;
for (k = 0; k < 4; ++k) {
if (k == i || k == j)
continue;
for (l = 0; l < 4; ++l)
for (m = 0; m < 4; ++m)
for (n = 0; n < 4; ++n)
if (is24 (f[n]( f[m]( f[l](cardsnum[i], cardsnum[j]), cardsnum[k]), cardsnum[6-i-j-k]))) {
/*printf( "((%d %c %d) %c %d) %c %d\n",
cardsnum[i], o[l], cardsnum[j], o[m], cardsnum[k], o[n], cardsnum[6-i-j-k]);*/
printf( "yes\n");
return;
} else if (is24 (f[n]( f[l](cardsnum[i], f[m]( cardsnum[j], cardsnum[k])), cardsnum[6-i-j-k]))) {
/*printf( "(%d %c (%d %c %d)) %c %d\n",
cardsnum[i], o[l], cardsnum[j], o[m], cardsnum[k], o[n], cardsnum[6-i-j-k]);*/
printf( "yes\n");
return;
} else if (is24 (f[m]( f[l](cardsnum[i], cardsnum[j]), f[n]( cardsnum[k], cardsnum[6-i-j-k])))) {
/*printf( "(%d %c %d) %c (%d %c %d)\n",
cardsnum[i], o[l], cardsnum[j], o[m], cardsnum[k], o[n], cardsnum[6-i-j-k]);*/
printf( "yes\n");
return;
} else if (is24 (f[l](cardsnum[i], f[n]( f[m]( cardsnum[j], cardsnum[k]), cardsnum[6-i-j-k])))) {
/*printf( "%d %c ((%d %c %d) %c %d)\n",
cardsnum[i], o[l], cardsnum[j], o[m], cardsnum[k], o[n], cardsnum[6-i-j-k]);*/
printf( "yes\n");
return;
} else if (is24 (f[l](cardsnum[i], f[m]( cardsnum[j], f[n]( cardsnum[k], cardsnum[6-i-j-k]))))) {
/*printf( "%d %c (%d %c (%d %c %d))\n",
cardsnum[i], o[l], cardsnum[j], o[m], cardsnum[k], o[n], cardsnum[6-i-j-k]);*/
printf( "yes\n");
return;
}
}
}
printf( "no\n");
return;
}
正文
stu(1191)2005-08-30 20:20:00
【评论】 【打印】 【字体:大 中 小】 本文链接:http://blog.pfan.cn/elva6401/4276.html
阅读(2654) | 评论(0)
版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!
评论