Nth Largest Value

Problem Description
For this problem, you will write a program that prints the  N th largest value in a fixed sized array of integers. To make things simple,  N will be 3 and the array will always be have 10 decimal integer values.
 
Input
The first line of input contains a single integer  P, (1 ≤  P ≤ 1000), which is the number of data sets that follow. Each data set consists of a single line containing the data set number, followed by a space,followed by 10 space separated decimal integers whose values are between 1 and 1000 inclusive.
 
Output
For each data set, generate one line of output with the following values: The data set number as a decimal integer, a space, and the 3 rd largest value of the corresponding 10 integers.
 
Sample Input
4
1 1 2 3 4 5 6 7 8 9 1000
2 338 304 619 95 343 496 489 116 98 127
3 931 240 986 894 826 640 965 833 136 138
4 940 955 364 188 133 254 501 122 768 408
 
Sample Output
1 8
2 489
3 931
4 768
 
 1 #include <stdio.h> 
 2 
 3 int main(){
 4     int T;
 5     int n;
 6     int number;
 7     int i;
 8     int max;
 9     int middle;
10     int min;
11 
12     scanf("%d",&T);
13 
14     while(T--){
15         max=1;     //对最大的三个数进行初始化
16         middle=1;
17         min=1;
18         scanf("%d",&n);
19 
20         for(i=0;i<10;i++){
21             scanf("%d",&number);
22 
23             if(number>max){    //如果找到当前最大的数,舍去最小数
24                 min=middle;
25                 middle=max;
26                 max=number;
27             }
28 
29             else if(number>middle){  //如果找到当前第二大的数,舍去最小数
30                 min=middle;
31                 middle=number;
32             }
33 
34             else if(number>min)    //如果找到当前第三大的数,舍去最小数
35                 min=number;
36         }
37         
38         printf("%d %d\n",n,min);
39 
40     }
41     return 0;
42 }

 

转载于:https://www.cnblogs.com/zqxLonely/p/4079758.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值