#include #include #include #include #define oper_add 0x00000001
#define oper_sub 0x00000002
#define oper_mul 0x00000004
#define oper_div 0x00000008
#define opt_num 3
using namespace std;
int org[4];
vectora;
stack> mystack;
int listnum(void)}}
}}}}
return 0;
}
int tfpoint(int num,int sum, unsigned int *optflag,int optnum)
return 0;
}int ret=0;
unsigned int opt1,opt2,opt3,opt4;
opt1 = *optflag;
opt2 = *optflag;
opt3 = *optflag;
opt4= *optflag;
//add
ret=sum-a[num-1];
opt1 |= oper_add << ((opt_num-optnum)*4);
tfpoint(num-1,ret,&opt1,optnum-1);
//sub
ret=sum+a[num-1];
opt2 |= oper_sub << ((opt_num-optnum)*4);
tfpoint(num-1,ret,&opt2,optnum-1);
//mul
if(a[num-1]!=0)
}//div
ret=sum*a[num-1];
opt4 |= oper_div << ((opt_num-optnum)*4);
tfpoint(num-1,ret,&opt4,optnum-1);
return 1;
}int main()
return 0;
}
24點演算法
include typedef float cdecl type myfun float float float funadd float x,float y float funsub float x,float y float funmul float x,float y float fundiv...
24點演算法
給定四個數,計算這四個數 1 13 的 能不能得到24 佔時只實現滿足一種情況就列印 方法 窮舉法 思路 有兩種方式,1 連貫式計算 2 分隔式計算 1 連貫式計算 例如對於2 4 3 5的計算,2 4 6 6 3 18 18 5 23 2 4 3 5 2 分隔式計算 例如對於2 4 3 5的計算,...
24點演算法
24點遊戲的演算法,其中最主要的思想就是窮舉法。所謂窮舉法就是列出4個數字加減乘除的各種可能性,包括括號的演算法。我們可以將表示式分成以下幾種 首先我們將4個數設為a,b,c,d,其中算術符號有 其中有效的表示式有a,ab cd,等等。列出所有有效的表示式。其中我們用列舉型別將符號定義成數字常量,比...