Submission #1309019

#TimeUsernameProblemLanguageResultExecution timeMemory
1309019ppmn_6Global Warming (CEOI18_glo)C++20
28 / 100
2095 ms1544 KiB
#include "bits/stdc++.h"
using namespace std;
using ll = long long;
using ld = long double;
using ull = unsigned long long;
 
mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());
 
// https://codeforces.com/blog/entry/79148
class Timer: chrono::high_resolution_clock {
    const time_point start_time;
public:
    Timer(): start_time(now()) {}
    rep elapsed_time() const {
		return chrono::duration_cast<chrono::milliseconds>(now() - start_time).count();
	}
} timer;

int main() {
	cin.tie(0);
    ios::sync_with_stdio(0);
    int n, x;
    cin >> n >> x;
    vector<int> a(n);
    vector<int> dp1;
    for (int i = 0; i < n; i++) {
		cin >> a[i];
	}
	int ans = 0;
	for (int i = 0; i < n; i++) {
		a[i] -= x;
		dp1.clear();
		for (int j = 0; j < n; j++) {
			auto it = lower_bound(dp1.begin(), dp1.end(), a[j]);
			if (it != dp1.end()) {
				*it = a[j];
			}
			else {
				dp1.push_back(a[j]);
			}
		}
		ans = max(ans, int(dp1.size()));
	}
	cout << ans;
    
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...