- #include<bits/stdc++.h>
- using namespace std;
- int n, t;
- set<int> data; //set容器的特性:不允許重複 & 遞增排序
- int main()
- {
- cout<<"Enter array length: ";
- cin>>n;
- for(int i=0; i<n; i++)
- {
- cin>>t;
- data.insert(t);
- }
- cout<<"The result is ";
- if(data.size()<3)
- {
- //原始寫法為 set<int>::reverse_iterator it=data.rbegin();
- //這裡以 auto 來自動判斷其型態
- auto it=data.rbegin(); //抓取最後一個成員的位址
- cout<<*it<<endl; //取值
- }
- else
- {
- auto it=data.rbegin();
- it++; //逆向走訪的下一個
- it++;
- cout<<*it<<endl;
- }
- return 0;
- }
複製代碼 |