1 solutions
-
0
这是一道暴力题,其实很简单只要把所有情况找出来就可以。 但是看了你们的提交,我发现我的数据出水了,让部分人捡漏了。 题库里的数据已经更新了,建议先再做一遍,看看比赛的代码还能不能ac。
思路: 扑克牌的大小区间是【1,13】,取三个数、两个运算符。 对于除号:要想得到24点,绝对不可能出现两个除号(/)的情况,所以只有ab/c的这种情况(如果ab=24了,且c=1,那我们可以直接用abc来代替ab/c)。这里要注意数据类型,如果三个数都是int类型,对于(1111/5)的运算是可以得到24的,但是在实际运算中,这样算就是错的。(所以数据没出好,给你们捡漏了)。而如果都是double类型,就不会出现这种情况。 对于乘号:情况就比较多了,可以两个先加减再乘,也可以先乘再加减,也可以两个都是乘号。这里要注意如果是两个数先减,要取绝对值abs()。 对于加号和乘号,没什么好说的,没有两个减号,但可以有两个加号。
Information
- ID
- 135
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 9
- Tags
- # Submissions
- 181
- Accepted
- 15
- Uploaded By