HDU 6168 Numbers 思维 水题
题目链接: 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 思维 水题相关推荐
- HDU 6168 Numbers 思维
本题就是告诉你有两个数串 其中第一个数串中的每两个元素ai和aj(i<j)相加得到的元素 放入第二个数串里 但由于两个数串给搞的比较混乱 需要解决从中识别出第一个数串并将其输出出来 本题其实仔细 ...
- codeforces 1060a(思维水题)
Let's call a string a phone number if it has length 11 and fits the pattern "8xxxxxxxxxx", ...
- FZU 2230 2230 翻翻棋(思维水题)
Problem Description 象棋翻翻棋(暗棋)中双方在4*8的格子中交战,有时候最后会只剩下帅和将.根据暗棋的规则,棋子只能上下左右移动,且相同的级别下,主动移动到地方棋子方将吃掉对方的棋 ...
- 【HDU - 5585】Numbers (水题,数学,数论)
题干: There is a number N.You should output "YES" if N is a multiple of 2, 3 or 5,otherwise ...
- CF Round #426 (Div. 2) The Useless Toy 思维 水题
题目链接: http://codeforces.com/contest/834/problem/A 题目描述: 输入起始状态和结束状态和数列长度, 判断旋转方向是顺时针逆时针还是不合理 解题思路: 长 ...
- 中石油训练赛 - 姓氏(思维+水题)
题目描述 在一个很大的课室里,里面有很多学生在听课.L老师挑选了其中的N个不同的学生起立回答问题,L老师对起立的每一个学生都是问同样的问题:"在本课室里,和你同姓的学生有多少人(不包括你自己 ...
- 【CodeForces - 707B】Bakery(思维水题)
Bakery Descriptions 玛莎想在从1到n的n个城市中开一家自己的面包店,在其中一个城市烘焙松饼. 为了在她的面包房烘焙松饼,玛莎需要从一些储存的地方建立面粉供应.只有k个仓库,位于不同 ...
- CodeForces - 622C Not Equal on a Segment(思维+水题)
题目链接:点击查看 题目大意:先给出一个长度为n的数列,然后给出m次询问,每次询问的格式是l,r,x,其中[l,r]代表的是数列的下标范围,要求我们输出任意一个在区间[l,r]内值不等于x的下标 题目 ...
- 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 ...
最新文章
- log4j个人使用整理
- 一些通讯知识、TCP/IP、三次握手四次分手(正确的图,网上很多错了)、HTTP\HTTPS、DNS、UDP
- ListView中添加Button后,Button的点击事件和ListView的点击事件冲突
- 欧几里得算法扩展欧几里得算法
- 未排序数组中累加和为给定值的最长子数组系列问题
- 架构设计:Vue+nginx+jwt+zuul+eureka+ribbon+hystrix+rabbitmq+mysql集群+redis集群+elsticsearch集群
- OkHttp实现登录注册验证
- 多客户端异步通讯框架
- Java 打 jar 包时,MANIFEST.MF 文件详解
- 怎样安装两个tomcat,怎样配置
- 当深度学习遇上图: 图神经网络的兴起!
- html动态生成按钮事件,javascript 动态生成按钮并添加事件时为什么不响应?
- PageHelper 分页Total总是为pageSize的问题
- 用命令行批处理bat,设置代理服务器、DNS、网关、WINS等
- php mysql odbc_一个用mysql_odbc和php写的serach数据库程序
- 【生活日记】最近心态不好啊,沉不住气
- 浅谈域名抢注和域名投资
- 【程序员如何买基金 九】基金定投的优势
- html定义微调器,bootstrap4 input数值微调插件
- OpenCV——简单的识别提取图像中的水平线与垂直线
热门文章
- java ee8 mvc1_JavaEE——SpringMVC(1)--@RequestMapping
- 数字识别java开源_Java基于opencv实现图像数字识别(三)—灰度化和二值化
- Python刷题-7
- 性能测试工具Locust的使用----TaskSet类~~task任务嵌套
- oracle audit文件,oracle 参数文件audit_trail的认识
- java vim ide_把VIM配置成IDE开发环境 | 学步园
- Python学习笔记:藉由私有属性实现封装
- Java实训项目6:GUI学生信息管理系统 - 实现步骤 - 创建项目
- Spring Boot读取application.yaml属性
- 【BZOJ4562】食物链,拓扑DP