Submission #97754

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
977542019-02-18 10:20:03jhnah917트리 (KOI16_tree)C++14
100 / 100
609 ms36576 KiB
#include <bits/stdc++.h>
using namespace std;
typedef pair<int, int> p;
template <typename T>
class SegTree{
private:
T tree[808080];
int lim;
function<T(const T a, const T b)> f;
public:
void init(int n, function<T(const T a, const T b)> func){
f = func;
for(lim = 1; lim <= n; lim <<= 1);
}
void update(int x, T v){
x += lim;
tree[x] = v;
while(x > 1){
x >>= 1;
tree[x] = f(tree[2*x], tree[2*x+1]);
}
}
T query(int s, int e){
s += lim;
e += lim;
T ret = 1;
while(s < e){
if(s%2 == 1) ret = f(ret, tree[s++]);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

tree.cpp: In instantiation of 'void HLD<T>::init(int, std::function<T(T, T)>) [with T = int]':
tree.cpp:140:3:   required from here
tree.cpp:100:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    for(int i=0; i<a.size(); i++) tree.update(i, a[i]);
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...