My issue
Why was the time limit exceeded?
My code
#include <stdio.h>
void arrange(int arr[], int n){
for(int i = 0; i < n-1; ++i){
for(int j = 0; j < n-1; ++j){
if(arr[j] > arr[j+1]){
int hold = arr[j];
arr[j] = arr[j+1];
arr[j+1] = hold;
}
else{
continue;
}
}
}
}
int second_max(int a[],int size){
int secondMax = 0;
for(int i = 0; i < size-1; ++i){
if(a[i] < a[size-1]){
secondMax = a[i];
}
}
return secondMax;
}
int main(void) {
// your code goes here
int t;
scanf("%d", &t);
for(int i = 0; i < t; ++i){
int size;
scanf("%d", &size);
int arr[size];
for(int j = 0; j < size; ++j){
scanf("%d", &arr[j]);
}
arrange(arr, size);
int secondmax = second_max(arr, size);
printf("%d\n", secondmax+arr[size-1]);
}
return 0;
}
Learning course: Arrays using C
Problem Link: CodeChef: Practical coding for everyone