#include <iostream>
#include <queue>

using namespace std;

int main(){
    int N;
    priority_queue<int> maxq;
    priority_queue<int, vector<int>, greater<int>> minq;
    int n;
    while(cin >> N){
        for(int i = 0; i < N; ++i){
            cin >> n;
            maxq.push(n);
            minq.push(n);
        }
        cout << maxq.top() << " " << minq.top() << endl;
        while(!maxq.empty()) maxq.pop();
        while(!minq.empty()) minq.pop();
    }
}

直接使用优先队列,本质上是堆排序