百度--买帽子
度度熊想去商場(chǎng)買一頂帽子,商場(chǎng)里有N頂帽子,有些帽子的價(jià)格可能相同。度度熊想買一頂價(jià)格第三便宜的帽子,問第三便宜的帽子價(jià)格是多少?
輸入描述:
首先輸入一個(gè)正整數(shù)N(N <= 50),接下來(lái)輸入N個(gè)數(shù)表示每頂帽子的價(jià)格(價(jià)格均是正整數(shù),且小于等于1000)輸出描述:
如果存在第三便宜的帽子,請(qǐng)輸出這個(gè)價(jià)格是多少,否則輸出-1輸入例子:
10 10 10 10 10 20 20 30 30 40 40輸出例子:
30?
這道題想用set集合來(lái)做,set有自動(dòng)排序的功能,而且相同的值只能有一個(gè),所以當(dāng)把所有的價(jià)錢放進(jìn)set集合后,set中的第三個(gè)數(shù)就是我們要的價(jià)格。當(dāng)然,在此之前我們需要判斷一下set.size()是否小于3,如果小于3,則輸出-1。
?
#include <iostream> #include <algorithm> #include "string.h" #include "stdio.h" #include <vector> #include<utility> #include "math.h" #include <set> using namespace std;int main() {int n;set<int> arr;cin>>n;if(n>50)return 0;for(int i = 0;i<n;i++){int hat;cin>>hat;if(hat>1000)return 0;elsearr.insert(hat);}if(arr.size()<3){cout<<"-1"<<endl;return 0;}set<int>::iterator ite1 = arr.begin();//這里是想把指向第一個(gè)元素的迭代器++,使它指向set中的第三個(gè)元素for(int i=0;i<2;i++){ite1++;}cout<<*ite1<<endl;return 0;}
?
轉(zhuǎn)載于:https://www.cnblogs.com/omelet/p/6798358.html
總結(jié)
- 上一篇: 网络爬虫的基本结构是什么?如何建立网络爬
- 下一篇: 一文览尽2017年下半年机器人行业融资大