HDU 5522 Numbers (暴力枚举)
2015-11-03 21:26
369 查看
题意:在一个数组里找是否有三个不同位置的数满足A=B+C
解答:先排序然后从大到小枚举i,把右边的数用一个数组标记其出现过,再枚举左边的数判断其加上Ai是否出现过.
解答:先排序然后从大到小枚举i,把右边的数用一个数组标记其出现过,再枚举左边的数判断其加上Ai是否出现过.
#include<bits/stdc++.h> using namespace std; #define LL long long #define pb push_back #define cl(a,b) memset(a,b,sizeof(a)) const int maxn=105; const int inf=1<<23; int a[maxn]; map<int,int> mp; int main(){ int n; while(~scanf("%d",&n)){ mp.clear(); for(int i=0;i<n;i++){ scanf("%d",&a[i]); mp[a[i]]++; } sort(a,a+n); for(int i=0;i<n;i++){ mp[a[i]]--; for(int j=0;j<i;j++){ if(mp[a[i]+a[j]]){ puts("YES");goto A; } } } puts("NO"); A:; } return 0; }
相关文章推荐
- hdoj 2578 Dating with girls(1) 【排序+二分+去重】
- leetcode-Minimum Size Subarray Sum
- MeanShift算法C++解析(一)
- 文字烟雾消散特效制作
- 2、CentOS中修改yum源
- Xcode因为证书问题经常报的那些错
- Android中TimePickerDialog,DatePickerDialog使用例子
- 【CentOS 7】 删除旧内核
- QIODevice类
- 书签(Bookmarks)
- LINQ中的陷阱--TakeWhile&SkipWhile
- java设计模式--装饰者模式(Decorater Pattern)
- why not the search engine build index for special character
- Android模拟器(genymotion)读取本机Tomcat服务器错误
- QT pro文件介绍
- iOS-OC-@synthesize 和dynamic 区别
- 重载,重写和super
- 视频追踪之目标选择(一)------边缘检测值程序
- LeetCode Rectangle Area (技巧)
- NandFlash学习