POJ2718-Smallest Difference
来源:互联网 发布:淘宝上在哪里买微信号 编辑:程序博客网 时间:2024/05/16 14:15
给定一组数,求由这组数中的两个数相减的最小值。
要注意的是其中的两个数不能是0开头的,即012 != 12。
对数据进行全排列,枚举所有情况取最小即可。
#include <cstdio>#include <cctype>#include <cstdlib>#include <cmath>#include <algorithm>using namespace std;const int INF = 0xfffffff;int main(){ int t; char digit[12]; scanf("%d", &t); getchar(); for (int i = 0; i < t; i++) { int n = 0; int j = 0; while (scanf("%c", &digit[j]) == 1) { if (isdigit(digit[j])) { j++; } else if (digit[j] == '\n') break; } n = j; int ans = INF; if (n == 2) { ans = abs(digit[0] - digit[1]); } else { int num1, num2; do { num1 = 0; num2 = 0; if (digit[0] == '0' || digit[n/2] == '0') { continue; } for (j = 0; j < n; j++) { if (j < n / 2) { num1 *= 10; num1 += digit[j] - '0'; } else if (j < n) { num2 *= 10; num2 += digit[j] - '0'; } } ans = min(ans, abs(num2-num1)); } while (next_permutation(digit, digit+n)); } printf("%d\n", ans); } return 0;}
0 0
- poj2718 Smallest Difference
- poj2718 Smallest Difference
- POJ2718---Smallest Difference
- [dfs]poj2718 Smallest Difference
- POJ2718-Smallest Difference
- Smallest Difference poj2718
- POJ2718 Smallest Difference
- POJ2718-Smallest Difference
- poj2718 Smallest Difference【贪心】
- POJ2718 Smallest Difference
- poj2718 Smallest Difference
- POJ2718 Smallest Difference 【贪心+枚举】
- POJ2718——Smallest Difference
- POJ2718-Smallest Difference-穷竭搜索
- POJ2718 Smallest Difference (暴力搜索+全排列)
- Smallest Difference(Poj2718)(枚举全排列next_Permutation)
- POJ2718——Smallest Difference(暴力瞎搞)
- 【POJ2718】Smallest Difference(枚举排列)
- c++ 初学者写的图书馆管理系统 多多指教
- 幂运算-分治法
- [Guava]——集合操作
- 例程2. TIMER0--使用时基定时器改造按键代码 --慕司板IAP
- JAVA泛型擦除
- POJ2718-Smallest Difference
- Problem 瞎子与瘸子的故事 bfs + 优先队列
- pybrain 的安装及报错 ImportError:No module named structure的解决方案
- javac编译servlet类出现的一系列问题及分析解决(javac编译servlet找不到javax.servlet.*包的问题)
- Java数据类型转换汇总 (持续更新)
- 文章标题@property生成的是私有变量,即,实在implementation 中生明的
- 关于python 的url_encode关于的嵌套字典类型变量的编码扩展
- 小区的路
- 部分和问题