Submission #958310

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
9583102024-04-05 11:19:50JwFXoizXylophone (JOI18_xylophone)C++14
47 / 100
125 ms175604 KiB
#include <bits/stdc++.h>
#include "xylophone.h"
using namespace std;
int a[5001], qq[5001][5001];
int C = 0;
int ask(int l, int r)
{
assert(++C <= 10000);
if (qq[l][r] != -1) return qq[l][r];
return qq[l][r] = query(l, r);
}
void calc(int l, int r, int f, int up)
{
if (r - l <= 1) return;
if (!f)
{
int x = ask(l + 1, r);
int lx = l + 1, rx = r - 1;
while (lx < rx)
{
int mid = (lx + rx + 1) >> 1;
int y = ask(mid, r);
if (x == y) lx = mid;
else rx = mid - 1;
}
if (up) a[lx] = a[r] + x;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...