第二小整数

Problem Description

求n个整数中倒数第二小的数。
每一个整数都独立看成一个数,比如,有三个数分别是1,1,3,那么,第二小的数就是1。

Input

输入包含多组测试数据。
输入的第一行是一个整数C,表示有C测试数据;
每组测试数据的第一行是一个整数n,表示本组测试数据有n个整数(2<=n<=10),接着一行是 n个整数 (每个数均小于100);

Output

请为每组测试数据输出第二小的整数,每组输出占一行。

Sample Input

2

2

1 2

3

1 1 3

Sample Output

2

1

 1 #include <stdio.h>
 2
 3 int main(){
 4     int T;
 5     int n;
 6     int i;
 7     int min;
 8     int min_flag;
 9     int number[11];
10
11     scanf("%d",&T);
12
13     while(T--){
14         scanf("%d",&n);
15
16         for(i=0;i<n;i++){
17             scanf("%d",&number[i]);
18
19             if(i==0){
20                 min=number[0];
21                 min_flag=0;
22             }
23
24             if(number[i]<min){
25                 min=number[i];
26                 min_flag=i;
27             }
28         }
29
30         for(i=0;i<n;i++){
31             if(i!=min_flag){
32                 min=number[i];
33                 break;
34             }
35         }
36
37         for(i=0;i<n;i++){
38             if(i!=min_flag && number[i]<min)
39                 min=number[i];
40         }
41
42         printf("%d\n",min);
43     }
44
45     return 0;
46 }
时间: 2024-08-10 00:06:02

第二小整数的相关文章

HDU 2561 第二小整数

第二小整数 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 10766    Accepted Submission(s): 6548 Problem Description 求n个整数中倒数第二小的数.每一个整数都独立看成一个数,比如,有三个数分别是1,1,3,那么,第二小的数就是1. Input 输入包含多组测试数据.输入的第一行是一

HDOJ/HDU 2561 第二小整数(水题~排序~)

Problem Description 求n个整数中倒数第二小的数. 每一个整数都独立看成一个数,比如,有三个数分别是1,1,3,那么,第二小的数就是1. Input 输入包含多组测试数据. 输入的第一行是一个整数C,表示有C测试数据: 每组测试数据的第一行是一个整数n,表示本组测试数据有n个整数(2<=n<=10),接着一行是 n个整数 (每个数均小于100); Output 请为每组测试数据输出第二小的整数,每组输出占一行. Sample Input 2 2 1 2 3 1 1 3 Sam

hdu ACM Steps 1.3.1 第二小整数

水题. 我还以为是快速选择,但快排直接就过了. #include<cstdio> #include<algorithm> using namespace std; const int maxn = 500000 + 10; int a[maxn]; int T,n; int main() { scanf("%d",&T); while(T--) { scanf("%d",&n); for(int i=1;i<=n;i++

HDU 2561 第二小整数 (排序)

题意:中文题. 析:输入后,排一下序就好. 代码如下: #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <vector> #include <cstring> #include <map> #include <cctype> using namespace std; const int ma

HDU2561 第二小整数

#include<cmath> #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; int main(void) { int t; scanf("%d",&t); while(t--) { int n; scanf("%d",&n); int a[n];

ACM学习之路————一个大整数与一个小整数不得不说得的秘密

这个相对于两个大整数的运算来说,只能说是,low爆了. 只要利用好除法的性质,这类题便迎刃而解.O(∩_∩)O哈哈~ //大整数除一个int数 #include<iostream> #include<cstdio> #include<cstring> using namespace std; char s[1000],result[1000]; int main() { long long divis; int n,i,k,flag,len; char c; while

python-面试常用 --变量、内存管理(小整数池,引用计数)

执行Python程序的两种方法 第一种:交互式(jupyter就是对这种进行了封装) 优点:直接给出结果 缺点:无法保存 第二种:命令行式,通过Python解释器输入文本(pycharm对这种进行了封装) 优点:可以保存 缺点:无法及时得到报错反馈 命令行式可以识别任何文本文件,例如:.txt文件..py文件. 命令行式打开的三个步骤 编写Python文件 找到Python文件的路径,把文本从硬盘中读入内存 在内存运行并进行解释(这个时候才会有Python语法的概念,才会打印) 变量 什么是变量

第二大整数

第二大整数 问题描述 编写一个程序,读入一组整数(不超过20个),当用户输入0时,表示输入结束.然后程序将从这组整数中,把第二大的那个整数找出来,并把它打印出来.说明:(1)0表示输入结束,它本身并不计入这组整数中.(2)在这组整数中,既有正数,也可能有负数.(3)这组整数的个数不少于2个. 输入格式:输入只有一行,包括若干个整数,中间用空格隔开,最后一个整数为0. 输出格式:输出第二大的那个整数. 输入输出样例 样例输入 5 8 -12 7 0 样例输出 7 #include <stdio.h

1.1编程基础之输入输出——02:输出第二个整数

总时间限制:  1000ms 内存限制:  65536kB 描述 输入三个整数,把第二个输入的整数输出. 输入 只有一行,共三个整数,整数之间由一个空格分隔.整数是32位有符号整数. 输出 只有一行,一个整数,即输入的第二个整数. 样例输入 123 456 789 样例输出 456 来源 习题(2-1)