UVA - 10125 - Sumsets (暴力枚举 + STL)
来源:互联网 发布:java 读取xlsx 编辑:程序博客网 时间:2024/06/08 03:35
思路:刚开始的思路是直接暴力枚举O(n3),感觉会超时,不过还是试着敲了下,居然过了,其中用STL中的set来找最后一个数,最好先排下序,然后再枚举d(要求的)和a,b,再用set去找c
AC代码:
#include <cstdio>#include <cstring>#include <algorithm>#include <cmath>#include <set>using namespace std;int a[1005];int flag, ans;int main() {int n;while(scanf("%d", &n), n) {set<int> num;for(int i = 0; i < n; i++) {scanf("%d", &a[i]);num.insert(a[i]);}sort(a, a + n);flag = 0; ans = 2;for(int i = n - 1; i >= 0 && !flag; i--) {for(int j = 0; j < n && !flag; j++) {for(int k = j + 1; k < n && !flag; k++) {int tmp = a[i] - a[j] - a[k];if(i != j && i != k && tmp != a[i] && tmp != a[j] && tmp != a[k])if(num.count(tmp) ) {flag = 1;ans = a[i];}}}}if(flag) printf("%d\n", ans);else printf("no solution\n");}return 0;}
0 0
- UVA - 10125 - Sumsets (暴力枚举 + STL)
- uva 10125 - Sumsets(技巧性枚举)
- Uva 10125 Sumsets(中途相遇法,高效枚举)
- UVA 10125 Sumsets 技巧性的枚举
- UVa 10125 Sumsets (折半枚举&二分查找)
- UVA 10125 Sumsets 折半枚举 + 二分
- uva 10125 Sumsets(搜索)
- 10125-Sumsets【暴力】
- 10125 - Sumsets(折半枚举+二分)
- UVA 10125 - Sumsets(POJ 2549) hash
- UVA - 10125 Sumsets(二分查找)
- UVA - 10125 Sumsets (预处理 + 二分)
- UVa 10125 - Sumsets
- uva 10125 - Sumsets
- uva 10125 Sumsets
- UVa 10125 - Sumsets
- uva 10125 - Sumsets
- UVA 10125 Sumsets
- uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型(转)
- 分享一下自己的成绩
- unbutu eclipse
- 30、Splash 开启软件就连接服务器检查是否需要升级
- 前端面试题
- UVA - 10125 - Sumsets (暴力枚举 + STL)
- 多态和组合
- 一台Mac登陆多个QQ for Mac的方法
- Android actionBar的基本应用
- 对于java i/o流的看法
- Base64加密
- 黑马程序员——Java编程语言学习总结– 函数与数组
- 黑马程序员 ios开发中的几种设计模式
- 开发笔试一