ZOJ 1101 Gamblers (简单搜索)
来源:互联网 发布:idle python gui 下载 编辑:程序博客网 时间:2024/05/16 08:39
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=101
题目意思:求满足a=b+c+d的最大a。
下面给出的解法时间复杂度为n^3log(n),即先排序,查找d=a-b-c时用二分法。
其实还有一种n^2log(n)的解法,即先求出所有可能的b+c,再对其排序,最后二分查找a-d是否在其中。
#include <iostream>#include <vector>#include <algorithm>using namespace std;void Search(int g[], int n){sort(g, g + n);for (int i = n - 1; i >= 0; i--)for (int j = 0; j < n; j++)for (int k = 0; k < n; k++)if (i != j && j != k && i != k){int left = g[i] - g[j] - g[k];if (left != g[i] && left != g[j] && left != g[k] && binary_search(g, g + n, left)){cout << g[i] << endl;return;}}cout << "no solution" << endl;}int main(){int n;int g[1000];while (cin >> n && n > 0){for (int i = 0; i < n; i++)cin >> g[i];Search(g, n);}}
- ZOJ 1101 Gamblers (简单搜索)
- zoj 1101Gamblers排序,搜索
- zoj 1101 Gamblers
- zoj 1101 Gamblers
- zoj 1101 Gamblers
- ZOJ 1101Gamblers
- ZOJ 1101 Gamblers
- ZOJ 1101 Gamblers
- ZOJ 1101 Gamblers 二分
- zoj 1101 Gamblers
- ZOJ 1101 Gamblers
- chapter05-Gamblers(ZOJ 1101)
- zoj 1101 Gamblers 跳多重循环!!
- zoj 1101 Gamblers 为什么总是WA?
- zoj 1101 Gamblers(快排+二分)
- ZOJ--1101:Gamblers(二分查找)
- zoj Gamblers(hash)
- 1101 Gamblers
- VMware三种网络连接方式
- 五个最佳编程文本编辑器
- java Graphics 类与 Graphics2D 类的区别
- HTML中的<UL>标签中li横向排列
- 设计模式之--生成器模式与抽象工厂模式的比较
- ZOJ 1101 Gamblers (简单搜索)
- 如何快速的从有上千万条记录的数据表中查找到自己需要的记录
- JAVA 如何给组件绘制边框
- 流控制传输协议
- 设计模式之-原型模式
- JAVA 如何获取Vector变量中指定位置的元素
- JAVA 监听器不能与所监听的对象在同一个线程内
- [Android 机制] 用LinearLayout布局,怎么增加滚动条
- 魔兽哈希算法封装和测试