Submission #444465

# Submission time Handle Problem Language Result Execution time Memory
444465 2021-07-14T06:36:47 Z fuad27 Global Warming (CEOI18_glo) C++14
10 / 100
101 ms 1968 KB
#include <iostream>
#include <vector>
using namespace std;
int CeilIndex(vector<int>& v, int l, int r, int key)
{
	while (r - l > 1) {
		int m = l + (r - l) / 2;
		if (v[m] >= key)
			r = m;
		else
			l = m;
	}

	return r;
}

int lis(vector<int>& v)
{
	if (v.size() == 0)
		return 0;
	vector<int> tail(v.size(), 0);
	int length = 1; 
	tail[0] = v[0];
	for (size_t i = 1; i < v.size(); i++) {

		if (v[i] < tail[0])
			tail[0] = v[i];
		else if (v[i] > tail[length - 1])
			tail[length++] = v[i];
		else
			tail[CeilIndex(tail, -1, length - 1, v[i])] = v[i];
	}

	return length;
}

int main()
{	
	int n, x;
	cin >> n >> x;
	vector<int> v;
	for(int i = 0;i<n;i++) {
		int p;
		cin >> p;
		v.push_back(p);
	}
	cout<<lis(v)<<endl;
	return 0;
}

# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 101 ms 1964 KB Output is correct
2 Correct 100 ms 1952 KB Output is correct
3 Correct 101 ms 1968 KB Output is correct
4 Correct 101 ms 1860 KB Output is correct
5 Correct 72 ms 1964 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 25 ms 712 KB Output is correct
2 Correct 26 ms 1376 KB Output is correct
3 Correct 26 ms 1284 KB Output is correct
4 Incorrect 19 ms 1096 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 50 ms 1124 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 204 KB Output isn't correct
2 Halted 0 ms 0 KB -