1.买帽子
度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同。度度熊想买一顶价格第三便宜的帽子,问第三便宜的帽子价格是多少?
输入描述:
首先输入一个正整数N(N <= 50),接下来输入N个数表示每顶帽子的价格(价格均是正整数,且小于等于1000)
输出描述:
如果存在第三便宜的帽子,请输出这个价格是多少,否则输出-1
输入例子1:
10
10 10 10 10 20 20 30 30 40 40
输出例子1:
30
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
int n,tmp;
cin>>n;
vector<int> v;
while(n--){
cin>>tmp;
v.push_back(tmp);
}
sort(v.begin(), v.end());
v.erase(unique(v.begin(), v.end()), v.end());
cout<<(v.size()<3?-1:v[2]);
return 0;
}
C++ STL算法系列4—unique , unique_copy函http://www.cnblogs.com/heyonggang/p/3243477.html
通过C++实现算法,解决从一组帽子价格中找出第三便宜帽子的问题。利用sort进行排序,unique去除重复元素,最终输出第三小的价格。
1604

被折叠的 条评论
为什么被折叠?



