度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同。度度熊想买一顶价格第三便宜的帽子,问第三便宜的帽子价格是多少?
输入描述:
首先输入一个正整数N(N <= 50),接下来输入N个数表示每顶帽子的价格(价格均是正整数,且小于等于1000)
输出描述:
如果存在第三便宜的帽子,请输出这个价格是多少,否则输出-1
输入例子1:
10 10 10 10 10 20 20 30 30 40 40
输出例子1:
30
#include<iostream>
using namespace std;
int main(){
int n;
cin>>n;
int pr[50];
int i,j,k;
for(i=0;i<n;i++){
cin>>pr[i];
}
// n=5;i=5;
int temp[3] = {1001,1001,1001};
// cout<<temp[0]<<" "<<temp[1]<<" "<<temp[2]<<endl;
for(i=0;i<n;i++){
while(pr[i]==temp[0]||pr[i]==temp[1]||pr[i]==temp[2])
i++;
for(k=0;k<3;k++){
if(temp[k] > pr[i]){
temp[k] = pr[i];
// cout<<temp[0]<<" "<<temp[1]<<" "<<temp[2]<<endl;
break;
}
// cout<<temp[0]<<" "<<temp[1]<<" "<<temp[2]<<endl;
}
}
int max=temp[0];
for(j=1;j<3;j++){
if(temp[j] > max)
max = temp[j];
}
if(temp[0]==1001||temp[1]==1001||temp[2]==1001)
max=-1;
cout<<max;
}