首页 > 代码库 > Nth Largest Value
Nth Largest Value
Problem Description
For this problem, you will write a program that prints the Nth 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 3rd 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 }
Nth Largest Value
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。