Submission #767044

#TimeUsernameProblemLanguageResultExecution timeMemory
767044YassineBenYounesSecret (JOI14_secret)C++17
Compilation error
0 ms0 KiB
#include<bits/stdc++.h> #include "secret.h" typedef long long ll; typedef unsigned long long ull; typedef long double ld; typedef double db; #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> #define pbds tree<pair<int, int>, null_type, less<pair<int, int>>,rb_tree_tag, tree_order_statistics_node_update> using namespace __gnu_pbds; ll gcd(ll a , ll b) {return b ? gcd(b , a % b) : a ;} // greatest common divisor (PGCD) ll lcm(ll a , ll b) {return (a * b) / gcd(a , b);} // least common multiple (PPCM) int dx[8] = {1, 0, 0, -1, 1, 1, -1, -1}; int dy[8] = {0, 1, -1, 0, 1, -1, -1, 1}; #define endl "\n" #define ss second #define ff first #define all(x) (x).begin() , (x).end() #define pb push_back #define vi vector<int> #define vii vector<pair<int,int>> #define vl vector<ll> #define vll vector<pair<ll,ll>> #define pii pair<int,int> #define pll pair<ll,ll> #define pdd pair<double,double> #define vdd vector<pdd> #define speed ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); using namespace std; ////////////////////Only Clear Code////////////////////////// const int mx = 1005; const int LOG = 25; const int inf = 1e9+5; const ll mod = 1e9+7; int range[mx][mx]; void Solve(int left, int right) { int mid, i; if (right - left <= 1) { return; } mid = (left + right) / 2; for (i = mid - 1; i >= left; --i) { if (range[i][mid] == -1) { range[i][mid] = Secret(range[i][i + 1], range[i + 1][mid]); } } for (i = mid + 1; i <= right; ++i) { if (range[mid][i] == -1) { range[mid][i] = Secret(range[mid][i - 1], range[i - 1][i]); } } Solve(left, mid); Solve(mid, right); } void Init(int N, int A[]){ for(int i = 0; i <= N;i++){ for(int j = 0; j <= N;j++){ range[i][j] = -1; } } for(int i = 0; i < N;i++){ range[i][i+1] = A[i]; } build(0, N); } int Query(int L, int R){ for(int i = L+1;i <= R;i++){ if(range[L][i] != -1 && range[i][R+1] != -1){ return Secret(range[L][i], range[i][R+1]); } } return range[L][R+1]; } /* NEVER GIVE UP! DOING SMTHNG IS BETTER THAN DOING NTHNG!!! Your Guide when stuck: - Continue keyword only after reading the whole input - Don't use memset with testcases - Check for corner cases(n=1, n=0) - Check where you declare n(Be careful of declaring it globally and in main) */

Compilation message (stderr)

secret.cpp: In function 'void Init(int, int*)':
secret.cpp:68:5: error: 'build' was not declared in this scope
   68 |     build(0, N);
      |     ^~~~~