2013dgtcs 数对
题目
问题描述:
考虑一组n个不同的正整数a1,a2,...,am,它们的值在1到1000000之间。给定一个整数x。写一个程序sumx计算这样的数对个数(ai,aj),1<=i<j<=n并且ai+aj=x。
数据输入:
标准输入的第一行是一个整数n(1<=n<=1000000)。第二行有n个整数表示元素。第三行是一个整数x(1<=x<=2000000)。
数据输出:
输出一行包含一个整数表示这样的数对个数。
注意:对于50%的测试数据,n<=1000。
输入输出样例:
sumx.in
9
5 12 7 10 9 1 2 3 11
13
sumx.out
3
解释:不同的和为13的数对是(12, 1), (10, 3)和(2, 11)。
分析
开个桶,或者排序二分
代码
1 #include <cstdio> 2 #include <algorithm> 3 using namespace std; 4 int b[1000010]; 5 int main() 6 { 7 freopen("sumx.in","r",stdin); 8 freopen("sumx.out","w",stdout); 9 int n,x,sum=0; 10 scanf("%d",&n); 11 for (int i=1;i<=n;i++) 12 { 13 int a; 14 scanf("%d",&a); 15 b[i]=a; 16 } 17 scanf("%d",&x); 18 sort(b+1,b+1+n); 19 for (int i=1;i<=n;i++) 20 { 21 int l=1,r=n,mid,c=0; 22 while (l<=r) 23 { 24 mid=(l+r)/2; 25 if (b[mid]+b[i]<=x) 26 { 27 l=mid+1; c=mid; 28 } 29 else r=mid-1; 30 } 31 if (b[c]+b[i]==x&&c!=i) 32 sum++; 33 } 34 printf("%d",sum/2); 35 }
转载于:https://www.cnblogs.com/zjzjzj/p/10699686.html
2013dgtcs 数对相关推荐
- 2023年你最值得了解的信息技术-AI篇(一)
列表 85 - 其他 辽宁省 大连优联智能 自动化生产线提供商 未融资 大连优联智能是一家自动化生产线提供商,集规划设计.制造安装.系统集成.视觉检测及AI数据智能分析于一体,可为汽车车身及发动机制造 ...
- 伍六七带你学算法 进阶篇-三数之和
三数之和 难度-中等 题目:给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组. 注意 ...
- 使用python愉快地做高数线代题目~
今天接触到了python,发现真是极易上手啊!对比c语言是什么鬼东西= = 诶,等下,看完教学文章发现TA在下面写了这句话 如果做了前面的内容你可能已被吸引了,觉得c语言真的是废材! 不...不是的. ...
- 十进制转化为二进制java代码_【模板小程序】任意长度十进制数转化为二进制(java实现)...
妈妈再也不用担心十进制数过大了233 import com.google.common.base.Strings; import java.math.BigInteger; import java.u ...
- HJ86 求最大连续bit数
描述 求一个byte数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1 本题含有多组样例输入. 输入描述: 输入一个byte数字 输出描述: 输出转成二进制之后连续 ...
- Redis 笔记(02)— keys 键相关命令(查询数据库key数量、判断key是否存在、指定key过期时间、查看key类型、查看key剩余秒数、选择数据库、删除key、删除数据库)
1. keys 键相关命令 命令 说明 dbsize 返回当前数据路的key数量 exists key 测试指定key是否存在 expire key seconds 为key指定过期时间 type k ...
- leetcode 5. Longest Palindromic Substring 字符串中的最长回文数 逐步从O(n^2)优化至线性时间
题目 解析 思路一 暴力解法 思路二 指针+最大长度 思路3 由中间至两边找回数 思路4 Manacher's algorithm 线性时间 参考文档 题目 链接 给定一个字符串 s,找到 s 中最长 ...
- 数据类型对应的字节数
20210622 https://www.icode9.com/content-4-421680.html 32位和64位常用数据结构所占字节数 20210126 1 2 4 8 1248 刚好都是2 ...
- LeetCode简单题之将整数转换为两个无零整数的和
题目 「无零整数」是十进制表示中 不含任何 0 的正整数. 给你一个整数 n,请你返回一个 由两个整数组成的列表 [A, B],满足: A 和 B 都是无零整数 A + B = n 题目数据保证至少有 ...
最新文章
- python资料包-5个G的Python学习资料包:让你从零基础成编程大神!
- strlen() sizeof()
- python遍历字典方法总结
- 组件间数据交互||父组件向子组件传值-基本使用|| 父组件向子组件传值-props属性名规则
- python数学函数_「分享」关于Python整理的常用数学函数整理
- android studio插入数据表中没有_学Java能拿高薪吗 Java中常见排序算法有哪些
- 【转】dicom通讯的工作方式及dicom标准简介!!
- C++, ID、指针、handle (void *)的区别
- web虚拟服务器4核32g,Web服务器配备四核的优势
- echarts折线图,纵坐标数值显示不准确的问题解决
- thinkphp框架的优缺点
- 外网资源下载速度过慢的问题
- web安全day30:人人都要懂的LAMP--apache服务安装和配置
- shell基础之case应用
- flac批量转mp3,详细步骤
- 如何做一个被领导喜欢的实施顾问
- vs使用快捷键注销多行
- 移动硬盘格式化了?可以这样恢复数据
- 通俗解读SGD、Momentum、Nestero Momentum、AdaGrad、RMSProp、Adam优化算法
- 计算机学院青年教师讲课,【教学动态】计算机科学与信息工程学院举办首届中青年教师讲课大赛...
热门文章
- 计算机的进制数思想在哪方面有应用,计算机应用技术问答题(一)
- 985计算机只考数据结构,初试只考数据结构的985院校
- oracle 开启事务_javaSE第十四部分 JDBC(2)mysql事务和JDBC实现事务
- mongodb从3.2升级到4.4_人教版六年级下册数学微课视频及练习4.4.2 比例尺的应用...
- win8计算机配置怎么看,win8怎么看电脑配置?win8电脑配置的查看方法
- python代码编写_高质量Python代码编写的5个优化技巧
- iOS UISegmentedControl
- Android自定义ListView示例,以创建不可滚动的ListView
- VS2022找不到Microsoft.Expression.Interactions.dll
- 去掉windows10“更新并关机”