题目来自:http://218.5.5.242:9018/JudgeOnline/problem.php?id=1278

题目描述

给你一个整数的集合S(里面所有的整数均不相同),请你找出最大的 d,使得 a + b + c = d。在这里a,b,c,d均为S中的数且a,b,c,d是不同的数。

输入

每组测试资料的第一行有1个整数 n(1 <= n <= 1000),代表S中元素的个数。接下来的n行,每行有一个整数xi,代表S中的各元素。-536870912 <= xi <= +536870911.n=0时代表输入结束,请参考Sample Input。

输出

对每一组测试资料,输出d。如果找不到则输出no solution。

样例输入

5
2
3
5
7
12
5
2
16
64
256
1024
0

样例输出

12
no solution

作者分析:这道题我们可以先排序,算出最大的和,然后暴力求解。
#include <bits/stdc++.h>
using namespace std; int main(){
int ans[100001],t = 0;
while (true){
int n;
cin >> n;
if (n == 0){
break;
}
t++;
int a[n+1];
for (int i = 1;i <= n;i++){
cin >> a[i];
}
sort(a,a+n+1);
int max = -1;
for (int i = n;i >= 1;i--){
for (int j = 1;j <= i;j++){
for (int k = j+1;k <= i;k++){
for (int l = k + 1;l <= i;l++){
if (a[j] + a[k] + a[l] == a[i]){
ans[t] = a[i];
max = 0;
break;
}
}
if (max == 0){
break;
}
}
if (max == 0){
break;
}
}
if (max == 0){
break;
}
}
if (max == -1){
ans[t] = -1;
}
}
for (int i = 1;i <= t;i++){
if (ans[i] == -1){
cout << "no solution" << endl;
continue;
}
cout << ans[i] << endl;
}
}
 

C++算法代码——Sumsets[uva10125]的更多相关文章

  1. LaTeX 算法代码排版 --latex2e范例总结

    LaTeX 写作: 算法代码排版 --latex2e范例总结 latex2e 宏包的使用范例: \usepackage[ruled]{algorithm2e}                     ...

  2. KMP算法代码

    以下是本人根据上一篇博客随笔http://www.cnblogs.com/jiayouwyhit/p/3251832.html,所写的KMP算法代码(暂未优化),个人认为在基于上一篇博客的基础上,代码 ...

  3. 算法代码[置顶] 机器学习实战之KNN算法详解

    改章节笔者在深圳喝咖啡的时候突然想到的...之前就有想写几篇关于算法代码的文章,所以回家到以后就奋笔疾书的写出来发表了 前一段时间介绍了Kmeans聚类,而KNN这个算法刚好是聚类以后经常使用的匹配技 ...

  4. 经常使用MD5算法代码

    经常使用的MD5算法代码日期: 2014年8月4日作者: 铁锚 MD5,全称为 Message Digest Algorithm 5(消息摘要算法第五版).详情请參考 维基百科:MD5  MD5加密后 ...

  5. 带你找到五一最省的旅游路线【dijkstra算法代码实现】

    算法推导过程参见[dijkstra算法推导详解] 此文为[dijkstra算法代码实现] https://www.cnblogs.com/Halburt/p/10767389.html package ...

  6. LDPC译码算法代码概述

    程序说明 V0.0 2015/1/24 LDPC译码算法代码概述   概述   本文介绍了包括LDPC_Simulation.m, ldpcdecoderbp1.m,ldpcdecoderminsum ...

  7. 『HTML5实现人工智能』小游戏《井字棋》发布,据说IQ上200才能赢【算法&代码讲解+资源打包下载】

    一,什么是TicTacToe(井字棋) 本游戏为在下用lufylegend开发的第二款小游戏.此游戏是大家想必大家小时候都玩过,因为玩它很简单,只需要一张草稿纸和一只笔就能开始游戏,所以广受儿童欢迎. ...

  8. 【图像处理】Haar Adaboost 检测自定义目标(视频车辆检测算法代码)

    阅读须知 本博客涉及到的资源: 正样本:http://download.csdn.net/detail/zhuangxiaobin/7326197 负样本:http://download.csdn.n ...

  9. 编程算法 - 高速排序算法 代码(C)

    高速排序算法 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 经典的高速排序算法, 作为一个编程者, 不论什么时候都要完整的手写. 代码: /* * m ...

随机推荐

  1. multiselect多选下拉框

    具体实现 <input type="hidden" id="q_dueDay" name="q_dueDay" value=" ...

  2. 一个简单且易上手的 Spring boot 后台管理框架-->EL-ADMIN

    一个简单且易上手的 Spring boot 后台管理框架 后台源码 前台源码

  3. C# 使用PictureBox实现图片按钮控件

    引言 我们有时候会在程序的文件夹里看见一些图标,而这些图标恰好是作为按钮的背景图片来使用的.鼠标指针在处于不同状态时,有"进入按钮"."按下左键"," ...

  4. Codeforces Round #626 (Div. 2) E. Instant Noodles(二分图,最大公因数)

    题意: 给你一个二分图,求左侧端点的所有可能子集中的点相连的右侧端点的权值的和的最大公因数. 题解: 若所有右侧端点均不在同一左侧子集中,则求所有权值的最大公因数即可 . 否则,将在相同左侧子集中的右 ...

  5. 2019牛客暑期多校训练营(第二场)D Kth Minimum Clique(第k团)

    题意:给你n个点 求第k小的团 思路:暴力bfs+bitset压位 #include <bits/stdc++.h> using namespace std; const int N = ...

  6. 2020 ICPC Universidad Nacional de Colombia Programming Contest

    2020 ICPC Universidad Nacional de Colombia Programming Contest A. Approach 三分 显然答案可以三分,注意\(eps\)还有两条 ...

  7. Codeforces Round #652 (Div. 2) D. TediousLee(dp)

    题目链接:https://codeforces.com/contest/1369/problem/D 题意 最初有一个结点,衍生规则如下: 如果结点 $u$ 没有子结点,添加 $1$ 个子结点 如果结 ...

  8. zoj2112 Dynamic Rankings (主席树 || 树套树)

    The Company Dynamic Rankings has developed a new kind of computer that is no longer satisfied with t ...

  9. Educational Codeforces Round 95 (Rated for Div. 2) A. Buying Torches (数学)

    题意:刚开始你有一个木棍,造一个火炬需要一个木根和一个煤块,现在你可以用一个木棍换取\(x\)个木棍,或者\(y\)根木棍换一个煤块,消耗一次操作,问最少需要操作多少次才能造出\(k\)把火炬. 题解 ...

  10. synchronized底层原理

    synchronized底层语义原理 Java 虚拟机中的同步(Synchronization)基于进入和退出管程(Monitor)对象实现. 在 Java 语言中,同步用的最多的地方可能是被 syn ...