답안 #882363

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
882363 2023-12-03T05:29:02 Z dubabuba Gap (APIO16_gap) C++14
컴파일 오류
0 ms 0 KB
#include "gap.h"
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
#define ff first
#define ss second

struct node {
	node *LC, *RC;
	ll tl, tr;
	ll mn, mx;
	ll ans;

	node(ll l, ll r) {
		ans = -1;
		tl = l, tr = r;
		MinMax(l, r, &mn, &mx);
	}

	bool birth() {
		if(tl == tr) return 0;
		if(mn == mx) return 0;
		LC = new node(tl, (tl + tr) / 2);
		RC = new node((tl + tr) / 2 + 1, tr);
		return 1;
	}

	ll merge(node *L, node *R) {
		ll ret = max(L-> ans, R-> ans);
		if(L-> mx == -1) return ret;
		if(R-> mx == -1) return ret;
		if(L-> mx == R.mn) return ret;
		return max(R-> mn - L-> mx, ret);
	}

	void build() {
		if(tl == tr) return;
		if(mn == mx) return;

		LC-> build();
		RC-> build();
		ans = merge(LC, RC);
	}
};

ll findGap(int T, int N) {
	node *root = new node(1LL, N);
	return root-> ans;
}

Compilation message

gap.cpp: In member function 'll node::merge(node*, node*)':
gap.cpp:35:18: error: request for member 'mn' in 'R', which is of pointer type 'node*' (maybe you meant to use '->' ?)
   35 |   if(L-> mx == R.mn) return ret;
      |                  ^~