[C_AR174-易] 身高排序
Time Limit: 1 seconds
問題描述 :
向系統輸入 N 個人的身高進去,再來系統會自動為這 N 個人的高矮進行排序,再來只要輸入 1~N 其中一個數字系統就能自動判斷並輸出相應第幾高的人的身高。
輸入說明 :
輸入N個人的身高,一身高輸入一行,N個人的身高皆輸入完畢後以 ”=====” 字串為一行與下行分隔,接著以下開始每一行輸入詢問第 1~N 高的人的身高為何,最後以輸入 ”end” 結束輸入。
※不會有同高的情況發生。 1 <= N <= 10。身高範圍為100~200。
輸出說明 :
輸出第 1~N 高之人的身高。
範例 :
問題描述 :
向系統輸入 N 個人的身高進去,再來系統會自動為這 N 個人的高矮進行排序,再來只要輸入 1~N 其中一個數字系統就能自動判斷並輸出相應第幾高的人的身高。
輸入說明 :
輸入N個人的身高,一身高輸入一行,N個人的身高皆輸入完畢後以 ”=====” 字串為一行與下行分隔,接著以下開始每一行輸入詢問第 1~N 高的人的身高為何,最後以輸入 ”end” 結束輸入。
※不會有同高的情況發生。 1 <= N <= 10。身高範圍為100~200。
輸出說明 :
輸出第 1~N 高之人的身高。
範例 :
輸入範例 | 輸出範例 |
167 166 171 160 ===== 2 1 end | 167 171 |
- #include <iostream>
- #include <algorithm>
- #include <string>
- #include <sstream>
- using namespace std;
- int main() {
- // [C_AR174-易] 身高排序
- string tall;
- int count = 0;
- int t[10];
- while(cin >> tall)
- {
- cin.ignore();
- if(tall != "=====")
- {
- t[count] = stoi(tall);
- count++;
- }
- else
- {
- break;
- }
- }
- sort(t, t+count);
- reverse(t, t+count);
- while(cin >> tall)
- {
- cin.ignore();
- if(tall != "end" && stoi(tall) <= count)
- {
- cout << t[stoi(tall)-1] << endl;
- }
- else
- {
- break;
- }
- }
- return 0;
- }
沒有留言:
張貼留言