Submission #763414

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
7634142023-06-22 09:36:38caganyanmazAdvertisement 2 (JOI23_ho_t2)C++17
100 / 100
1587 ms117624 KiB
#include <bits/stdc++.h>
#define pb push_back
using namespace std;
struct SegTree
{
int ll, rr;
vector<int> left, right;
vector<bool> data;
SegTree(int ll, int rr) : ll(ll), rr(rr), data(1, false), left(1, -1), right(1, -1) {}
void cc(int index)
{
if (left[index] == -1)
{
left[index] = data.size();
data.pb(false);
left.pb(-1);
right.pb(-1);
right[index] = data.size();
data.pb(false);
left.pb(-1);
right.pb(-1);
}
}
void set(int l, int r, int index, int i, int val)
{
if (i >= r || l > i)
return;
if (l + 1 == r)
{
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

Main.cpp: In constructor 'SegTree::SegTree(int, int)':
Main.cpp:9:22: warning: 'SegTree::data' will be initialized after [-Wreorder]
    9 |         vector<bool> data;
      |                      ^~~~
Main.cpp:8:21: warning:   'std::vector<int> SegTree::left' [-Wreorder]
    8 |         vector<int> left, right;
      |                     ^~~~
Main.cpp:10:9: warning:   when initialized here [-Wreorder]
   10 |         SegTree(int ll, int rr) : ll(ll), rr(rr), data(1, false), left(1, -1), right(1, -1) {}
      |         ^~~~~~~
Main.cpp: In member function 'void SegTree::set(int, int, int, int, int)':
Main.cpp:35:26: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   35 |                 int m = l+r>>1;
      |                         ~^~
Main.cpp: In member function 'bool SegTree::get(int, int, int, int, int)':
Main.cpp:46:26: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   46 |                 int m = l+r>>1;
      |                         ~^~
Main.cpp: In member function 'void SegTree::reset()':
Main.cpp:55:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<bool>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   55 |                 for (int i = 0; i < data.size(); i++)
      |                                 ~~^~~~~~~~~~~~~
Main.cpp: In function 'int main()':
Main.cpp:105:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::array<int, 3> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  105 |         for (int i = 0; i < v.size(); i++)
      |                         ~~^~~~~~~~~~
Main.cpp:106:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::array<int, 3> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  106 |                 if (i+1 < v.size() && v[i][0] == v[i+1][0] && v[i][1] <= v[i+1][1]) necessary[v[i][2]] = false;
      |                     ~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...