回 帖 发 新 帖 刷新版面

主题:跪求各位高手大虾——24点变形

速算游戏
源程序名    point24.??? (PAS,C,CPP)
可执行文件名   point24.EXE
输入文件名   point24.IN
输出文件名     point24.OUT
时限           1s

问题描述
“算24点”的游戏大家一定都不陌生。每局游戏随机抽出4张牌,每张牌的点数代表相应数字(其中A表示1,J代表11,Q代表12,K代表13,无Joker)。而游戏者必须通过+、-、*、/四种运算和括号(除法必须能够除尽,例如6/3是允许的,而6/4是不允许的)合理地安排运算的顺序,最终得出24,例如(7+5)*(7-5)=24, 2*K-6/3=24等等。
有一次,jyy和lhc算24点,结果每一次都输,jyy感到很郁闷,于是新加了一条规则:除了+、-、*、/四种运算以外,还允许使用位运算and, or和xor(分别用‘&’, ‘|’和‘^’表示)。Jyy想,如此一来,lhc的脑子就肯定转不过弯来了。谁知道加了这个规则以后,jyy还是每次都输。所以请你写一个程序,在新的规则下帮jyy在1s内算出24点的答案。

输入格式
一行4个字符,用空格分开,分别为4张牌的点数,其中A、T、J、Q、K分别表示1、10、11、12和13。输入数据保证有解。

输出格式
输出一行,表示24点的解法。输出时请用圆括号补齐每一步的运算,例如3+4+5表示为((3+4)+5),3*(4+5)表示为(3*(4+5))。如果有多组解,输出所有解中字典顺序最小的一个。

样例输入
T J Q K

样例输出
(((J*T)&K)+Q)

回复列表 (共2个回复)

沙发

我看是dp,比较烦而以

板凳

好像是夏令营的题

我来回复

您尚未登录,请登录后再回复。点此登录或注册