关注
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static boolean[] visited = {false,false,false,false}; public static int[] nums = new int[4]; public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 while (in.hasNext()) { // 注意 while 处理多个 case for(int i=0;i<4;i++){ nums[i] = in.nextInt(); } //若考虑括号的情况,需要对数组再全排列,这里不写也能过 boolean flag = false; for(int i=0;i<4;i++){ visited[i] = true; if(cal(1,(double)nums[i])){ flag = true; break; }else{ visited[i] = false; } } System.out.print(flag); } } public static boolean cal(int used, double tempNum){ if(tempNum == 24.0d && used == 4){ return true; } for(int i=0;i<4;i++){ if(visited[i] == false){ visited[i] = true; if(cal(used+1,tempNum+nums[i]) || cal(used+1,tempNum-nums[i]) || cal(used+1,tempNum*nums[i]) || cal(used+1,tempNum/nums[i]) ){ return true; }else{ visited[i] = false; } } } return false; } } 稍作修改可过
点赞
相关推荐
点赞 评论 收藏
分享
07-02 10:39
门头沟学院 Java 
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你被哪些公司秒挂过? #
9189次浏览 120人参与
# 26届的你们有几段实习? #
3365次浏览 71人参与
# 如何提高实习转正率? #
5050次浏览 99人参与
# 第一份工作应该只看薪资吗 #
152926次浏览 1531人参与
# 大厂面试初体验 #
13403次浏览 91人参与
# 你想留在一线还是回老家? #
49032次浏览 503人参与
# 你认为哪些项目算烂大街? #
3567次浏览 88人参与
# 你以为的实习VS真实的实习 #
4466次浏览 73人参与
# 选完offer后,你后悔学本专业吗 #
47893次浏览 239人参与
# 离家近房租贵VS离家远但房租低,怎么选 #
9614次浏览 119人参与
# 你后悔自己读研吗? #
4405次浏览 119人参与
# 最难的技术面是哪家公司? #
2798次浏览 36人参与
# 拼多多工作体验 #
29465次浏览 201人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
113997次浏览 793人参与
# 月薪多少能在一线城市生存 #
5315次浏览 108人参与
# leader认为你工作不认真怎么办 #
32066次浏览 151人参与
# 如果可以,你希望哪个公司来捞你 #
104439次浏览 504人参与
# 如果公司降薪,你会跳槽吗? #
80092次浏览 588人参与
# 妈妈治愈了你哪些脆皮时刻 #
29424次浏览 321人参与
# 如果公司给你放一天假,你会怎么度过? #
17691次浏览 129人参与