题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=6168

  题目描述: 定义数组b是由数组a每两项的和组成的,现在将数组A, B混在一起给你, 筛出数组A

  解题思路: 这题其实很简单的........之前脑子短路了, 以为记录两个数加和的次数是原来m中的和会超时就没那么做.....是真的蠢, 打实时比赛的时候思路不够清晰啊, 其实只要记录一下每个和就可以了....

  代码:

#include <iostream>
#include <cstdio>
#include <string>
#include <vector>
#include <cstring>
#include <iterator>
#include <cmath>
#include <algorithm>
#include <stack>
#include <deque>
#include <map>
#define lson l, m, rt<<1
#define rson m+1, r, rt<<1|1
#define mem0(a) memset(a,0,sizeof(a))
#define meminf(a) memset(a,-0x3f,sizeof(a))
#define fi(n) for(i=0;i<n;i++)
#define fj(m) for(j=0;j<m;j++)
#define sca(x) scanf("%d",&x)
#define scalld(x) scanf("%I64d",&x)
#define print(x) printf("%d\n", x)
#define printlld(x) printf("%I64d\n",x)
#define de printf("=======\n")
#define yes printf("YES\n")
#define no printf("NO\n")
typedef long long ll;
using namespace std;const int maxm = 125260;
int a[maxm];
int ans[maxm];
map<int, int> MAP;int main() {int m;while( sca(m) == 1 ) {mem0(a);mem0(ans);MAP.clear();for( int i = 1; i <= m; i++ ) {sca( a[i] );}sort( a+1, a+m+1 );ans[1] = a[1];int pos = 2;for( int i = 2; i <= m; i++ ) {if( MAP[a[i]] == 0 ) {ans[pos] = a[i];for( int j = 1; j < pos; j++ ) {MAP[ans[pos]+ans[j]]++;}pos++;}else {MAP[a[i]]--;}}printf( "%d\n", pos-1 );for( int i = 1; i < pos; i++ ) {if( i == 1 ) printf( "%d", ans[i] );else printf( " %d", ans[i] );}printf( "\n" );}return 0;
}

View Code

  思考: 我是真的菜........是真的菜......vegetable

转载于:https://www.cnblogs.com/FriskyPuppy/p/7412715.html

HDU 6168 Numbers 思维 水题相关推荐

  1. HDU 6168 Numbers 思维

    本题就是告诉你有两个数串 其中第一个数串中的每两个元素ai和aj(i<j)相加得到的元素 放入第二个数串里 但由于两个数串给搞的比较混乱 需要解决从中识别出第一个数串并将其输出出来 本题其实仔细 ...

  2. codeforces 1060a(思维水题)

    Let's call a string a phone number if it has length 11 and fits the pattern "8xxxxxxxxxx", ...

  3. FZU 2230 2230 翻翻棋(思维水题)

    Problem Description 象棋翻翻棋(暗棋)中双方在4*8的格子中交战,有时候最后会只剩下帅和将.根据暗棋的规则,棋子只能上下左右移动,且相同的级别下,主动移动到地方棋子方将吃掉对方的棋 ...

  4. 【HDU - 5585】Numbers (水题,数学,数论)

    题干: There is a number N.You should output "YES" if N is a multiple of 2, 3 or 5,otherwise ...

  5. CF Round #426 (Div. 2) The Useless Toy 思维 水题

    题目链接: http://codeforces.com/contest/834/problem/A 题目描述: 输入起始状态和结束状态和数列长度, 判断旋转方向是顺时针逆时针还是不合理 解题思路: 长 ...

  6. 中石油训练赛 - 姓氏(思维+水题)

    题目描述 在一个很大的课室里,里面有很多学生在听课.L老师挑选了其中的N个不同的学生起立回答问题,L老师对起立的每一个学生都是问同样的问题:"在本课室里,和你同姓的学生有多少人(不包括你自己 ...

  7. 【CodeForces - 707B】Bakery(思维水题)

    Bakery Descriptions 玛莎想在从1到n的n个城市中开一家自己的面包店,在其中一个城市烘焙松饼. 为了在她的面包房烘焙松饼,玛莎需要从一些储存的地方建立面粉供应.只有k个仓库,位于不同 ...

  8. CodeForces - 622C Not Equal on a Segment(思维+水题)

    题目链接:点击查看 题目大意:先给出一个长度为n的数列,然后给出m次询问,每次询问的格式是l,r,x,其中[l,r]代表的是数列的下标范围,要求我们输出任意一个在区间[l,r]内值不等于x的下标 题目 ...

  9. hdu 6168 Numbers

    zk has n numbers a1,a2,...,an. For each (i,j) satisfying 1≤i<j≤n, zk generates a new number (ai+a ...

最新文章

  1. log4j个人使用整理
  2. 一些通讯知识、TCP/IP、三次握手四次分手(正确的图,网上很多错了)、HTTP\HTTPS、DNS、UDP
  3. ListView中添加Button后,Button的点击事件和ListView的点击事件冲突
  4. 欧几里得算法扩展欧几里得算法
  5. 未排序数组中累加和为给定值的最长子数组系列问题
  6. 架构设计:Vue+nginx+jwt+zuul+eureka+ribbon+hystrix+rabbitmq+mysql集群+redis集群+elsticsearch集群
  7. OkHttp实现登录注册验证
  8. 多客户端异步通讯框架
  9. Java 打 jar 包时,MANIFEST.MF 文件详解
  10. 怎样安装两个tomcat,怎样配置
  11. 当深度学习遇上图: 图神经网络的兴起!
  12. html动态生成按钮事件,javascript 动态生成按钮并添加事件时为什么不响应?
  13. PageHelper 分页Total总是为pageSize的问题
  14. 用命令行批处理bat,设置代理服务器、DNS、网关、WINS等
  15. php mysql odbc_一个用mysql_odbc和php写的serach数据库程序
  16. 【生活日记】最近心态不好啊,沉不住气
  17. 浅谈域名抢注和域名投资
  18. 【程序员如何买基金 九】基金定投的优势
  19. html定义微调器,bootstrap4 input数值微调插件
  20. OpenCV——简单的识别提取图像中的水平线与垂直线

热门文章

  1. java ee8 mvc1_JavaEE——SpringMVC(1)--@RequestMapping
  2. 数字识别java开源_Java基于opencv实现图像数字识别(三)—灰度化和二值化
  3. Python刷题-7
  4. 性能测试工具Locust的使用----TaskSet类~~task任务嵌套
  5. oracle audit文件,oracle 参数文件audit_trail的认识
  6. java vim ide_把VIM配置成IDE开发环境 | 学步园
  7. Python学习笔记:藉由私有属性实现封装
  8. Java实训项目6:GUI学生信息管理系统 - 实现步骤 - 创建项目
  9. Spring Boot读取application.yaml属性
  10. 【BZOJ4562】食物链,拓扑DP