제출 #14427

#제출 시각아이디문제언어결과실행 시간메모리
14427hakgb11이상한 수열 (OJUZ10_bizarre)C++98
8 / 100
27 ms1916 KiB
#include <iostream>
#include <fstream>
#include <string>
#include <string.h>
#include <queue>
#include <stdio.h>
#include <algorithm>
#include <vector>
#include <stack>
#include <map>
#include <set>
#include <limits.h>

typedef long long ll;
using namespace std;

int n, m, t;

int main()
{
#ifdef _CONSOLE
	freopen("input.txt", "r", stdin);
#endif
	int n;
	cin >> n;
	vector<int> vi(n);
	for (int i = 0; i < n; i++){
		cin >> vi[i];
	}
	cin >> m;
	if (m <= n){
		cout << vi[m - 1] << endl;
		return 0;
	}
	sort(vi.begin(), vi.end());
	vi.resize(unique(vi.begin(), vi.end()) - vi.begin());
	vector<int>::iterator itor = lower_bound(vi.begin(), vi.end(), vi.size());
	
	if (itor == vi.end()){
		cout << (m - n) + (vi.size() - 1) << endl; // 무한
	}
	else{
		if ((*itor - vi.size() + 1) + n <= m) // 아닐때
			cout << *itor << endl;
		else{
			cout << (m - n) + (vi.size() - 1) << endl; // 무한

		}
	}
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...