Submission #984377

#TimeUsernameProblemLanguageResultExecution timeMemory
984377LOLOLOSecret (JOI14_secret)C++17
Compilation error
0 ms0 KiB
#include "secret.h" using namespace std; #define f first #define s second #define pb push_back #define ep emplace #define eb emplace_back #define lb lower_bound #define ub upper_bound #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() #define uniquev(v) sort(all(v)), (v).resize(unique(all(v)) - (v).begin()) #define mem(f,x) memset(f , x , sizeof(f)) #define sz(x) (int)(x).size() #define __lcm(a, b) (1ll * ((a) / __gcd((a), (b))) * (b)) #define mxx *max_element #define mnn *min_element #define cntbit(x) __builtin_popcountll(x) #define len(x) (int)(x.length()) const int N = 1e3 + 10; int n; int a[N], f[N][N]; void prepare(int l, int r) { if (l > r) { return; } int m = (l + r) / 2; int val = a[m]; f[m][m] = val; f[m + 1][m + 1] = a[m + 1]; for (int j = m + 2; j <= r; j++) { f[m + 1][j] = Secret(f[m + 1][j - 1], a[j]); } for (int j = m - 1; j >= l; j--) { f[j][m] = Secret(f[j + 1][m], a[j]); } prepare(l, m - 1); prepare(m + 1, r); } void Init(int _n, int _a[]) { n = _n; for (int i = 1; i <= n; i++) a[i] = _a[i - 1]; mem(f, -1); prepare(1, n); } int get(int l, int r, int u, int v) { int m = (l + r) / 2; if (m >= u && m <= v) { if (m == v) { return f[u][m]; } return Secret(f[u][m], f[m + 1][v]); } if (m > v) { return get(l, m - 1, u, v); } return get(m + 1, r, u, v); } int query(int l, int r) { l++, r++; if (l == r) { return a[l]; } return get(1, n, l, r); }

Compilation message (stderr)

secret.cpp: In function 'void Init(int, int*)':
secret.cpp:15:25: error: 'memset' was not declared in this scope
   15 | #define     mem(f,x)    memset(f , x , sizeof(f))
      |                         ^~~~~~
secret.cpp:54:5: note: in expansion of macro 'mem'
   54 |     mem(f, -1);
      |     ^~~
secret.cpp:2:1: note: 'memset' is defined in header '<cstring>'; did you forget to '#include <cstring>'?
    1 | #include "secret.h"
  +++ |+#include <cstring>
    2 |