Submission #771191

# Submission time Handle Problem Language Result Execution time Memory
771191 2023-07-02T14:44:24 Z dilanyan Financial Report (JOI21_financial) C++17
17 / 100
37 ms 2624 KB
//-------------dilanyan------------\\

#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<stack>
#include<stdio.h>
using namespace std;

//------------------KarginDefines--------------------\\
 
#define ll long long
#define pb push_back
#define all(u) (u).begin(), (u).end()
#define pqueue priority_queue
#define upper upper_bound
#define lower lower_bound
#define sz(s) s.size()
#define mkp make_pair
#define Kargin ios_base::sync_with_stdio(false);cin.tie(NULL);
#define Usaco freopen(".in", "r", stdin); freopen(".out", "w", stdout);

//-------------------KarginConstants------------------\\

const int mod = 1000000007;
const int infmax = INT32_MAX, infmin = INT32_MIN;
const ll Infmax = INT64_MAX, Infmin = INT64_MIN;

//-------------------KarginCode------------------------\\

const int N = 300005;
int a[N], dp[N], ans[N], mx[N];

void KarginSolve() {
	int n, d;
	cin >> n >> d;
	for (int i = 0;i < n;i++) {
		cin >> a[i];
	}
	if (n == d) {
		int lenght = 1;
		dp[0] = a[0];
		for (int i = 1; i < n; i++) {
			auto it = lower(dp, dp + lenght, a[i]);
			if (it == dp + lenght) {
				dp[lenght++] = a[i];
			}
			else {
				*it = a[i];
			}
		}
		cout << lenght;
	}
	else if (d == 1) {
		stack<int> st;
		int ans = 0;
		for (int i = n - 1;i >= 0;i--) {
			if (st.empty()) {
				st.push(a[i]);
			}
			else {
				while (!st.empty()) {
					int x = st.top();
					if (x >= a[i] + 1) {
						break;
					}
					st.pop();
				}
				st.push(a[i]);
			}
			ans = max(ans,(int) st.size());
		}
		cout << ans << endl;
	}
}

int main() {
	//Usaco
	Kargin;
	int test = 1;
	//cin >> test;
	while (test--) {
		KarginSolve();
		cout << endl;
	}
	return 0;
}

Compilation message

Main.cpp:1:1: warning: multi-line comment [-Wcomment]
    1 | //-------------dilanyan------------\\
      | ^
Main.cpp:9:1: warning: multi-line comment [-Wcomment]
    9 | //------------------KarginDefines--------------------\\
      | ^
Main.cpp:22:1: warning: multi-line comment [-Wcomment]
   22 | //-------------------KarginConstants------------------\\
      | ^
Main.cpp:28:1: warning: multi-line comment [-Wcomment]
   28 | //-------------------KarginCode------------------------\\
      | ^
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 220 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 0 ms 340 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Incorrect 0 ms 212 KB Output isn't correct
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 220 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 0 ms 340 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Incorrect 0 ms 212 KB Output isn't correct
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 220 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 0 ms 340 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Incorrect 0 ms 212 KB Output isn't correct
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 23 ms 1392 KB Output is correct
2 Correct 24 ms 1420 KB Output is correct
3 Correct 25 ms 1484 KB Output is correct
4 Correct 25 ms 1436 KB Output is correct
5 Correct 25 ms 1608 KB Output is correct
6 Correct 25 ms 1396 KB Output is correct
7 Correct 23 ms 2596 KB Output is correct
8 Correct 23 ms 1492 KB Output is correct
9 Correct 24 ms 2236 KB Output is correct
10 Correct 24 ms 1388 KB Output is correct
11 Correct 25 ms 1496 KB Output is correct
12 Correct 25 ms 1384 KB Output is correct
13 Correct 24 ms 1488 KB Output is correct
14 Correct 23 ms 1468 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 24 ms 1448 KB Output is correct
2 Correct 33 ms 1492 KB Output is correct
3 Correct 36 ms 1488 KB Output is correct
4 Correct 36 ms 1396 KB Output is correct
5 Correct 37 ms 1868 KB Output is correct
6 Correct 37 ms 1492 KB Output is correct
7 Correct 27 ms 2624 KB Output is correct
8 Correct 22 ms 1492 KB Output is correct
9 Correct 30 ms 1708 KB Output is correct
10 Correct 34 ms 1496 KB Output is correct
11 Correct 36 ms 1484 KB Output is correct
12 Correct 24 ms 1436 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 220 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 1 ms 212 KB Output is correct
8 Correct 0 ms 340 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 0 ms 212 KB Output is correct
11 Incorrect 0 ms 212 KB Output isn't correct
12 Halted 0 ms 0 KB -