제출 #1144893

#제출 시각아이디문제언어결과실행 시간메모리
1144893minggaSecret (JOI14_secret)C++20
0 / 100
337 ms8356 KiB
#include "bits/stdc++.h" #include "secret.h" using namespace std; #define ln "\n" #define pb push_back #define fi first #define se second #define all(x) (x).begin(), (x).end() #define sz(x) ((int)(x).size()) // #define int long long const int mod = 1e9 + 7; const int inf = 2e18; const int N = 1005; int n, a[N], f[N][N]; void calc(int l, int r) { if(l >= r) return; int m = (l + r) >> 1; calc(l, m); calc(m + 1, r); f[m][m] = a[m]; for(int i = m - 1; i >= l; i--) f[i][m] = Secret(f[i + 1][m], a[i]); f[m + 1][m + 1] = a[m + 1]; for(int i = m + 2; i <= r; i++) f[m + 1][i] = Secret(f[m + 1][i - 1], a[i]); } void Init(int len, int arr[]) { n = len; for(int i = 1; i <= n; i++) a[i] = arr[i]; for(int i = 1; i <= n; i++) { for(int j = i + 1; j <= n; j++) { f[i][j] = f[j][i] = -1; } } calc(1, n); } int Query(int l, int r) { if(l == r) return a[l]; for(int i = l; i <= r; i++) { if(f[l][i] == -1) { return Secret(f[l][i - 1], f[i][r]); } } }

컴파일 시 표준 에러 (stderr) 메시지

secret.cpp:14:17: warning: overflow in conversion from 'double' to 'int' changes value from '2.0e+18' to '2147483647' [-Woverflow]
   14 | const int inf = 2e18;
      |                 ^~~~
secret.cpp: In function 'int Query(int, int)':
secret.cpp:46:1: warning: control reaches end of non-void function [-Wreturn-type]
   46 | }
      | ^
#Verdict Execution timeMemoryGrader output
Fetching results...