UVA 10344 - 23 out of 5
来源:互联网 发布:easyui 表单插件js 编辑:程序博客网 时间:2024/06/09 15:20
题目大意:给你5个 1 ~ 50 范围内的整数,求能否使这 5 个数经过4次加、减、乘的运算得出 23
解题思路:直接 DFS 查找所有可能的情况,当经过 4 次运算得出 23 就结束查找
#include <cstdio>#include <algorithm>using namespace std;int arr[10], ok;int dfs(int i, int sum) {if (i == 4 && sum == 23)ok = 1;if (i < 4 && !ok) {dfs(i + 1, sum * arr[i + 1]);dfs(i + 1, sum + arr[i + 1]);dfs(i + 1, sum - arr[i + 1]);}}int main() {while (scanf("%d%d%d%d%d", &arr[0], &arr[1], &arr[2], &arr[3], &arr[4]), arr[0]) {sort(arr, arr + 5);ok = 0;do {dfs(0, arr[0]);} while (next_permutation(arr, arr + 5));printf(ok ? "Possible\n" : "Impossible\n");}return 0;}
0 0
- Uva 10344 23 out of 5
- uva 10344 - 23 out of 5
- uva 10344 - 23 out of 5
- uva-10344 - 23 out of 5
- UVa 10344 - 23 out of 5
- uva 10344 - 23 out of 5
- UVa 10344 23 out of 5
- uva 10344 23 out of 5(DFS)
- UVA 10344 23 out of 5
- uva-10344 - 23 out of 5
- UVa:10344 23 out of 5
- uva 10344 23 out of 5
- uva 10344 23 Out of 5
- [回溯]23 out of 5 UVA 10344
- UVa 10344 - 23 out of 5
- UVa 10344 - 23 out of 5
- UVA 10344 - 23 out of 5
- uva-10344 - 23 out of 5
- 切图
- poj 2573 Bridge (过桥问题 贪心)
- 2014华为机试题10:从考试成绩中划出及格线
- C#格式化输出
- <li>横排显示</li>
- UVA 10344 - 23 out of 5
- MINA 学习1
- STL string详解
- 递归读取xml 文件;
- 模态窗口阻塞程序等待后台处理结果
- 【转】Visual Studio 非常实用的调试技巧
- Java面试笔记
- size_t
- UVa290 - Palindroms <---> smordnilaP(进制转换、回文)