답안 #1056325

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1056325 2024-08-13T08:52:23 Z Minbaev 비밀 (JOI14_secret) C++17
0 / 100
492 ms 524288 KB
#include "secret.h"

using namespace std;

const int Y = 1005;

int t[Y*4], a[Y], n;

void build(int tl, int tr, int v){
	if(tl == tr){
		t[v] = a[tl];
		return;
	}
	int tm = tr + tl >> 1;
	
	build(tl,tm,v << 1);
	build(tm+1,tr,v << 1 | 1);
	t[v] = Secret(t[v << 1], t[v >> 1 | 1]);
}
 
int get(int tl, int tr, int v, int l, int r){
	if(l <= tl && tr <= r){
		return t[v];
	}
	int tm = tr + tl >> 1;
	
	if(tm < l)return get(tm+1,tr,v << 1 | 1,l,r);
	if(tm + 1 > r)return get(tl,tm,v << 1,l,r);
	
	return Secret(get(tm+1,tr,v << 1 | 1,l,r), get(tl,tm,v << 1,l,r));
}

void Init(int N, int A[]){
    n = N;
    for(int i = 0; i < n; ++i) a[i] = A[i];
    build(1, 0, n - 1);
 
}
int Query(int l, int r){
    return get(1, 0, n - 1, l, r);
}

Compilation message

secret.cpp: In function 'void build(int, int, int)':
secret.cpp:14:14: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   14 |  int tm = tr + tl >> 1;
      |           ~~~^~~~
secret.cpp: In function 'int get(int, int, int, int, int)':
secret.cpp:25:14: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   25 |  int tm = tr + tl >> 1;
      |           ~~~^~~~
# 결과 실행 시간 메모리 Grader output
1 Runtime error 261 ms 524288 KB Execution killed with signal 9
2 Runtime error 264 ms 524288 KB Execution killed with signal 9
3 Runtime error 278 ms 524288 KB Execution killed with signal 9
4 Runtime error 492 ms 524288 KB Execution killed with signal 9
5 Runtime error 459 ms 524288 KB Execution killed with signal 9
6 Runtime error 451 ms 524288 KB Execution killed with signal 9
7 Runtime error 474 ms 524288 KB Execution killed with signal 9
8 Runtime error 455 ms 524288 KB Execution killed with signal 9
9 Runtime error 446 ms 524288 KB Execution killed with signal 9
10 Runtime error 458 ms 524288 KB Execution killed with signal 9