度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同。度度熊想买一顶价格第三便宜的帽子,问第三便宜的帽子价格是多少?
输入描述:首先输入一个正整数N(N <= 50),接下来输入N个数表示每顶帽子的价格(价格均是正整数,且小于等于1000)
输出描述:如果存在第三便宜的帽子,请输出这个价格是多少,否则输出-1
输入例子:1010 10 10 10 20 20 30 30 40 40
输出例子:30
C++源代码:
// Baidu problem 2017.05.17 // 2017.05.18 by wyj /* 名企笔试:百度2017春招笔试真题编程题(买帽子)2017-05-17 算法爱好者 度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同。度度熊想买一顶价格第三便宜的帽子, 问第三便宜的帽子价格是多少? 输入描述: 首先输入一个正整数N(N <= 50),接下来输入N个数表示每顶帽子的价格(价格均是正整数,且小于等于1000) 输出描述: 如果存在第三便宜的帽子,请输出这个价格是多少,否则输出-1 输入例子: 10 10 10 10 10 20 20 30 30 40 40 输出例子: 30 */ #include #include using namespace std; int main() { int n; int i = 1, j = 0; int P[50] = { 1000 }; cin >> n; for (int i = 0;i < n;i++) cin >> P[i]; sort(P,P+n); while (i < 3 && j < n) { j++; if (P[j] > P[j - 1]) i++; } if (i != 3 && j == n) cout << "Not Find" << endl; else cout << P[j] << endl; return 0; }
名企笔试:百度2017春招笔试真题编程题(买帽子)2017-05-17 算法爱好者
最新推荐文章于 2019-09-04 20:44:32 发布