Submission #466233

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
4662332021-08-18 11:30:51prvocisloExercise Deadlines (CCO20_day1problem2)C++17
25 / 25
145 ms7112 KiB
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <queue>
typedef long long ll;
using namespace std;
const int maxn = 1 << 18;
int maxi[maxn * 2], alive[maxn * 2];
void merge(int i)
{
maxi[i] = max(maxi[i << 1], maxi[i << 1 | 1]);
alive[i] = alive[i << 1] + alive[i << 1 | 1];
}
void remove_element(int i)
{
i += maxn;
maxi[i] = -1, alive[i] = 0;
for (i = (i >> 1); i > 0; i >>= 1) merge(i);
}
int last_big(int x)
{
int i = 1;
for (; i < maxn; )
{
if (maxi[i << 1 | 1] < x) i = i << 1;
else i = i << 1 | 1;
}
return i - maxn;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...