Openjudge-NOI题库-和为给定数
题目描述 Description
若存在和为m的数对,输出两个整数,小的在前,大的在后,中间用单个空格隔开。若有多个数对满足条件,选择数对中较小的数更小的。若找不到符合要求的数对,输出一行No。
输入样例:
4
2 5 1 4
6
输出样例:
1 5
思路:这题用二分查找最快,先把数组从小到大排序(我这用的是快排,目的是为了满足题目条件中的"若有多个数对满足条件,选择数对中较小的数更小的")
代码如下:
1 #include <stdio.h> 2 #include <stdlib.h> 3 int fun(const void *a,const void *b) 4 { 5 return *(int*)a-*(int*)b; 6 } 7 int main() 8 { 9 int n,a[100002],m; 10 int i,l; 11 int r,mid; 12 scanf("%d",&n); 13 for(i=1;i<=n;i++) 14 { 15 scanf("%d",&a[i]); 16 } 17 qsort(a+1,n,sizeof(int),fun);//选出小的更小 18 scanf("%d",&m); 19 for(i=1;i<=n;i++) 20 { 21 l=i+1;//左 22 r=n;//右 23 while(l<=r) 24 { 25 mid=(l+r)/2; 26 if(a[mid]==m-a[i]) break;//找到了 27 else if(a[mid]>m-a[i]) r=mid-1;//中间大于,右往左移 28 else l=mid+1;//否则左边右移 29 } 30 if(a[mid]==m-a[i])//输出结果 31 { 32 printf("%d %d\n",a[i],m-a[i]); 33 return 0; 34 } 35 } 36 printf("No\n");//没有 37 return 0; 38 }
转载于:https://www.cnblogs.com/geek-007/p/5667447.html
Openjudge-NOI题库-和为给定数相关推荐
- OpenJudge NOI题库 1.4 编程基础之逻辑表达式与条件分支
OpenJudge NOI题库 1.4 编程基础之逻辑表达式与条件分支 OpenJudge - OpenJudge - 题目 啊哈C语言 第11讲 4.1.4_01判断数正负 啊哈C语言 第11讲 4 ...
- OpenJudge NOI题库 1.5编程基础之循环控制
OpenJudge NOI题库 1.5编程基础之循环控制 OpenJudge - OpenJudge - 题目 1.5_01求平均年龄 1.5_01求平均年龄_哔哩哔哩_bilibili 1.5_02 ...
- OpenJudge NOI题库 1.7 编程基础之字符串
OpenJudge NOI题库 1.7 编程基础之字符串 OpenJudge - OpenJudge - 题目 1.7_01统计数字字符个数 1.7_01统计数字字符个数_哔哩哔哩_bilibili ...
- OpenJudge NOI题库 1.1 编程基础之输入输出
OpenJudge NOI题库 1.1编程基础之输入输出 OpenJudge - OpenJudge - 题目 1.1_01:Hello, World!_2017-03-19(C++语言) 1.1_0 ...
- Openjudge NOI题库1.7编程基础之字符串 34:回文子串
总时间限制: 1000ms 内存限制: 65536kB 描述 给定一个字符串,输出所有长度至少为2的回文子串. 回文子串即从左往右输出和从右往左输出结果是一样的字符串,比如:abba,cccde ...
- Openjudge NOI题库1.11编程基础之二分查找04 网线管理
总时间限制: 1000ms 内存限制: 65536kB 描述 仙境的居民们决定举办一场程序设计区域赛.裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛.他们决定将选手的电脑用星形拓扑 ...
- Openjudge NOI题库 ch0111/04 网线管理
这篇主要是讲讲细节 总时间限制: 1000ms 内存限制: 65536kB 描述 仙境的居民们决定举办一场程序设计区域赛.裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛.他们决定将选手的 ...
- Openjudge NOI题库 ch0111/10 河中跳房子|NOIP2015 day2 stone
这题同时也是NOIP2015 D2T1 跳石头 stone 原题. 总时间限制: 1000ms 内存限制: 65536kB 描述 每年奶牛们都要举办各种特殊版本的跳房子比赛,包括在河里从一个岩石跳到另 ...
- OpenJudge NOI题库1.1答案
我是一位编程爱好者,大家可以看我的代码进行学习,这些代码都是通过测试的.(仅供参考) 01.Hello, World! #include<bits/stdc++.h> using name ...
最新文章
- 设计模式笔记之十四 (命令模式)
- python生成器应用中的一个要点
- 使用rman本机复制新数据库
- C#面向对象--命名空间
- pytorch:tensor的运算
- 在线开关MySQL5.7 GTID_MySQL 5.7 在线启用和关闭GTID
- 数学建模比赛需要那些c语言的知识,数学建模需要掌握哪些编程语言和技术
- LibFetion 应用程序
- PWA系列 - Web Push 技术
- Matlab R2017a启动时初始化过程时间太长解决办法
- 短视频的海绵宝宝配音怎么制作?这可能是最容易上手的配音教程
- 让Atmega8A-PU 支持外部晶振的熔丝设置
- 串口调试小节之五 串口参数设置查询
- Win11系统打开电脑磁盘显示磁盘错误无法打开怎么办?
- u盘中Trojan.Generic病毒
- 【EI会议】2022年人工智能与统计学前沿国际会议(CFAIS 2022)
- Docker与自动化部署
- spring.log
- 面试展示:CRM项目客户管理模块展示
- 华为android能用几年,华为手机能用几年 一般智能手机能用多少年
热门文章
- 什么叫组网_5G中,啥是独立组网(SA)与非独立组网(NSA)
- 分享丨10年DBA老司机整理的Oracle学习路线图
- “敏捷版”全链路压测
- ALB Ingress 发布,轻松应对云原生应用流量管理
- Serverless 工程实践 | Serverless 应用优化与调试秘诀
- mysql ef 分布式事务_分布式事务系列--分布式跨库查询解决方案 mysql federated引擎的使用...
- h5手机端浏览器机制_H5测试介绍
- 恩施软件开发人员每月多少钱_恩施建个大棚多少钱搭建、养猪大棚价格
- linux用不用装固态硬盘驱动,固态硬盘要不要安装驱动?总算弄明白了
- opencv:读取、保存操作函数