HDU2523(论scanf的重要性)

2024-09-07 19:48
文章标签 重要性 scanf hdu2523

本文主要是介绍HDU2523(论scanf的重要性),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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


解题思路:

先把a数组排个序,然后把| xi - xj |的所有组合值求出来,把b数组在排个序。这时候要考虑出现1、1、1、2、2、3这种相邻两个一样的情况,开一个vis标记数组把相邻的数进行合并,这样就可以顺利取到第k大的值。

特别说明,论scanf和printf的重要性,用cin和cout无尽超时,尽管写了加速器。以后还是尽量不要嫌费事了(PS:昨天考试因为cin、cout还超时了几发)。


完整代码:

#include <functional>
#include <algorithm>
#include <iostream>
#include <fstream>
#include <sstream>
#include <iomanip>
#include <numeric>
#include <cstring>
#include <climits>
#include <cassert>
#include <complex>
#include <cstdio>
#include <string>
#include <vector>
#include <bitset>
#include <queue>
#include <stack>
#include <cmath>
#include <ctime>
#include <list>
#include <set>
#include <map>
using namespace std;#pragma comment(linker, "/STACK:102400000,102400000")typedef long long LL;
typedef double DB;
typedef unsigned uint;
typedef unsigned long long uLL;/** Constant List .. **/ //{const int MOD = int(1e9)+7;
const int INF = 0x3f3f3f3f;
const LL INFF = 0x3f3f3f3f3f3f3f3fLL;
const DB EPS = 1e-9;
const DB OO = 1e20;
const DB PI = acos(-1.0); //M_PI;const int maxn = 1000001;
int a[maxn] , b[maxn];
bool vis[maxn];int main()
{#ifdef DoubleQfreopen("in.txt","r",stdin);#endifstd::ios::sync_with_stdio(false);std::cin.tie(0);int T ;scanf("%d",&T);while(T--){int n , k;scanf("%d%d",&n,&k);for(int i = 0 ; i < n ; i ++)scanf("%d",&a[i]);sort(a , a + n);int s = 0;for(int i = 0 ; i < n  ; i ++){for(int j = n - 1  ; j > i ; j --){b[s++] = a[j] - a[i];}}sort(b , b + s);memset(vis , true , sizeof(vis));for(int i = 1 ;  i < s ; i ++){if(b[i] == b[i-1])vis[i] = false;}int cnt = 0;int key;for(int i = 0 ; i < s ; i++){if(vis[i])cnt ++;if(cnt == k){key = i;break;}}printf("%d\n",b[key]);}
}


这篇关于HDU2523(论scanf的重要性)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1145997

相关文章

可测试,可维护,可移植:上位机软件分层设计的重要性

互联网中,软件工程师岗位会分前端工程师,后端工程师。这是由于互联网软件规模庞大,从业人员众多。前后端分别根据各自需求发展不一样的技术栈。那么上位机软件呢?它规模小,通常一个人就能开发一个项目。它还有必要分前后端吗? 有必要。本文从三个方面论述。分别是可测试,可维护,可移植。 可测试 软件黑盒测试更普遍,但很难覆盖所有应用场景。于是有了接口测试、模块化测试以及单元测试。都是通过降低测试对象

临床基础两手抓!这个12+神经网络模型太贪了,免疫治疗预测、通路重要性、基因重要性、通路交互作用性全部拿下!

生信碱移 IRnet介绍 用于预测病人免疫治疗反应类型的生物过程嵌入神经网络,提供通路、通路交互、基因重要性的多重可解释性评估。 临床实践中常常遇到许多复杂的问题,常见的两种是: 二分类或多分类:预测患者对治疗有无耐受(二分类)、判断患者的疾病分级(多分类); 连续数值的预测:预测癌症病人的风险、预测患者的白细胞数值水平; 尽管传统的机器学习提供了高效的建模预测与初步的特征重

DTO类实现Serializable接口的重要性

所谓序列化,简单一点理解,就是将对象转换成字节数组,反序列化是将字节数组恢复为对象。凡是要在网络上传输的对象、要写入文件的对象、要保存到数据库中的对象都要进行序列化。Java对象是无法直接保存到文件中,或是存入数据库中的。如果要保存到文件中,或是存入数据库中,就要将对象序列化,即转换为字节数组才能保存到文件中或是数据库中。文件或者数据库中的字节数组拿出来之后要转换为对象才能被我们识别,即反序列化。

ACM比赛中如何加速c++的输入输出?如何使cin速度与scanf速度相当?什么是最快的输入输出方法?

在竞赛中,遇到大数据时,往往读文件成了程序运行速度的瓶颈,需要更快的读取方式。相信几乎所有的C++学习者都在cin机器缓慢的速度上栽过跟头,于是从此以后发誓不用cin读数据。还有人说Pascal的read语句的速度是C/C++中scanf比不上的,C++选手只能干着急。难道C++真的低Pascal一等吗?答案是不言而喻的。一个进阶的方法是把数据一下子读进来,然后再转化字符串,这种方法传说中

论互联网安全的重要性

论互联网安全的重要性 当今,计算机领域什么最火?当属人工智能了,纵观各大IT巨头google,facebook,apple,Baidu都有自己的人工智能实验室,google有谷歌大脑,其主要计划是研究当今最顶级的技术,比如无人驾驶汽车,google眼镜,百度成立IDL深度研究院等等。这是不是代表,未来我们的生活将因人工智能的发展而发生巨大变化?我想是的。人工智能要基于海量数据处理,这些数据包含大

c语言(scanf函数)

scanf函数注意事项: 1.输入字符 #include <stdio.h>int main(){char c;printf("请输入一个字符:\n");scanf("%c",&c);printf("输入的是%c\n",c);return 0;} 2.一次性输入多个数值,并且以某些符号隔开,应加以提示。( 注意:数值之间的分隔符是任意的,不一定要用中划线-,可以是逗号、空格、

高精度治具加工的重要性和创新性

在现代制造业中,高精度治具加工扮演着至关重要的角色。它不仅是生产过程中的关键环节,更是推动行业不断创新和发展的重要力量。时利和将解析高精度治具加工的重要性和创新性。   一、高精度治具加工的重要性   1.确保产品质量   高精度治具能够为生产过程提供准确的定位、夹紧和导向功能,从而确保产品的尺寸精度、形状精度和表面质量。例如,在电子制造领域,高精度的治具可以保证芯片的精确安装,提高电子

软件兼容性测试重要性,第三方软件测试服务公司的测试流程

在当今的软件开发及使用环境中,软件兼容性测试作为一个关键的环节,越来越受到重视。随着各种操作系统、硬件与软件环境的多样化,如何确保软件的兼容性,成为我们需要深入探讨的重要话题。卓码软件测评,作为专业的第三方软件测试服务公司,深知其中的重要性,并在这一领域提供了全面的解决方案。 一、什么是软件兼容性测试?   软件兼容性测试是指在不同的操作系统、浏览器、设备和网络环境中,对软件进行测试,确保其能够

C语言gets()与scanf()

先列举几种情况,以下的代码只有输入方式有变化: 1. #include<string>#include<math.h>using namespace std;int main(){char m[33];char n[33];gets(n);gets(m);printf("%s",m);//正常输出return 0;} 2. #include<string>#include<math.

数据库中的“加速器”:深度解析索引的重要性及最佳实践

文章目录 **为什么要使用索引?****索引的作用:** **索引的分类****1. 按索引字段的个数分类****2. 按照索引值的唯一性分类** **如何定义索引?****1. 创建索引****语句中的关键要素:****创建索引的示例:** **2. 删除索引** **创建索引的最佳实践****创建索引的原则:** **总结** 在数据库系统中,索引就像书中的目录一样,是提升查