제출 #1344669

#제출 시각아이디문제언어결과실행 시간메모리
1344669thelegendary08Text editor (CEOI24_editor)C++17
컴파일 에러
0 ms0 KiB
#include<bits/stdc++.h>
#define int long long
#define f0r(i,n) for(int i = 0; i < n; i++)
#define FOR(i,k,n) for(int i = k; i < n; i++)
#define pb push_back
#define mp make_pair
#define eb emplace_back
#define F first
#define S second
#define vi vector<int>
#define pii pair<int,int>
#define dout(x) cout<<x<<' '<<#x<<endl
#define dout2(x,y) cout<<x<<' '<<#x<<' '<<y<<' '<<#y<<endl
#define vout(v) cout<<#v<<": "; for(auto u : v)cout<<u<<' '; cout<<endl
using namespace std; 
struct segtree{
	int n; vector<pii> tree; 
	segtree(vi &a){
		n = a.size(); tree.resize(4*n+5); build(1,0,n-1,a);
	}
	void pull(int v){tree[v]=min(tree[v*2],tree[v*2+1]);}
	void build(int v, int tl, int tr, vi &a){
		if(tl==tr){tree[v] = mp(a[tl], tl); return;}
		int tm = tl + tr >> 1; build(v*2,tl,tm,a); build(v*2+1,tm+1,tr,a); pull(v);
	}
	pii quer(int v, int tl, int tr, int l, int r){
		if(tl > r || tr < l)return mp(4e18,4e18); if(tl >= l && tr <= r)return tree[v]; 
		int tm = tl + tr >> 1; return min(quer(v*2,tl,tm,l,r), quer(v*2+1,tm+1,tr,l,r));
	}
	int first_less(int v, int tl, int tr, int l, int r, int x){
		if(tl > r || tr < l)return -1; if(tree[v].F >= x)return -1; if(tl==tr)return tl; 
		int tm = tl + tr >> 1; int lef = first_less(v*2,tl,tm,l,r,x); if(lef!=-1)return lef; return first_less(v*2+1,tm+1,tr,l,r,x);
	}
	int last_less(int v, int tl, int tr, int l, int r, int x){
		if(tl > r || tr < l)return -1; if(tree[v].F >= x)return -1; if(tl==tr)return tl;
		int tm = tl + tr >> 1; int lef = last_less(v*2+1,tm+1,tr,l,r,x); if(lef!=-1)return lef; return last_less(v*2,tl,tm,l,r,x);
	}
};
const int mxn = 1e6 + 5; 
int n, d[mxn][2][2], x1, y1, x2, y2; 
signed main(){
	cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h); 
	vi dn(n), up(n); f0r(i,n)dn[i] = h[i] - 2*i, up[i] = h[i] + 2*i; segtree A = segtree(dn), B = segtree(up);
	f0r(i,n){
		d[i][0][1] = abs(x1 - i) + h[i] - S.quer(1,0,n-1,min(x1,i),max(x1,i)).F;
		d[i][1][0] = y2 + abs(x2 - i);
		int l = min(x1,i), r = max(x1,i); int ld = A.quer(1,0,n-1,0,l).S, rd = B.quer(1,0,n-1,r,n-1).S; 
		d[i][0][0] = min(l + r - 2 * ld + h[ld], 2 * rd - l - r + h[rd]); 
		l = min(x2,i), r = max(x2,i); int ch = S.quer(1,0,n-1,l,r).F; if(ch <= y2)d[i][1][1] = r - l + y2 - ch; else{
			int mn = 4e18; 
			int lp = S.last_less(1,0,n-1,0,l-1,y2); if(lp != -1){
				mn = min(mn, l + r - 2 * lp + y2 - h[lp]);
			}
			int ld = A.quer(1,0,n-1,lp+1,l).S; mn = min(mn, l + r - 2 * ld + h[ld] - y2);
			int rp = S.first_less(1,0,n-1,r+1,n-1,y2); if(rp != -1){
				mn = min(mn, 2 * rp - l - r + y2 - h[rp]); 
			}
			int rd = B.quer(1,0,n-1,r,(rp == -1 ? n : rp) - 1).S; mn = min(mn, 2 * rd - l - r + h[rd] - y2);
			d[i][1][1] = mn; 
		}
	}
	
	int ans = 4e18; f0r(i,n-1){
		ans = min(ans, d[i][0][1] + d[i+1][1][0] + 1); ans = min(ans, d[i][1][1] + d[i+1][0][0] + 1); 
	}
	int smin = 1e18; for(int i = n-1; i >= 0; i--){
		ans = min(ans, d[i][0][1] - i + smin + 2); smin = min(smin, d[i][1][1] + i); 
	}
	smin = 1e18; for(int i = n-1; i >= 0; i--){
		ans = min(ans, d[i][1][1] - i + smin + 2); smin = min(smin, d[i][0][1] + i); 
	}
	int ch = S.quer(1,0,n-1,min(x1,x2),max(x1,x2)).F; ans = min(ans, abs(x1 - x2) + abs(y2 - ch)); if(ch > y2){
		int mn = ch, pt = 0; for(int i = max(x1, x2) + 1; i < n; i++){
			pt+=2; mn = min(mn, h[i]); ans = min(ans, pt + abs(y2 - mn) + abs(x1 - x2)); 
		}
		mn = ch, pt = 0; for(int i = min(x1, x2) - 1; i >= 0; i--){
			pt+=2; mn = min(mn, h[i]); ans = min(ans, pt + abs(y2 - mn) + abs(x1 - x2));
		}
	}
	cout<<ans;
}

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

Main.cpp:40:26: error: 'long long int y1' redeclared as different kind of entity
   40 | int n, d[mxn][2][2], x1, y1, x2, y2;
      |                          ^~
In file included from /usr/include/features.h:502,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/os_defines.h:39,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h:679,
                 from /usr/include/c++/13/cassert:43,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:33,
                 from Main.cpp:1:
/usr/include/x86_64-linux-gnu/bits/mathcalls.h:224:1: note: previous declaration 'double y1(double)'
  224 | __MATHCALL (y1,, (_Mdouble_));
      | ^~~~~~~~~~
Main.cpp: In function 'int main()':
Main.cpp:42:19: error: no match for 'operator>>' (operand types are 'std::basic_istream<char>::__istream_type' {aka 'std::basic_istream<char>'} and 'double(double) noexcept')
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |         ~~~~~~~~~~^~~~
      |               |     |
      |               |     double(double) noexcept
      |               std::basic_istream<char>::__istream_type {aka std::basic_istream<char>}
In file included from /usr/include/c++/13/sstream:40,
                 from /usr/include/c++/13/complex:45,
                 from /usr/include/c++/13/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:127:
/usr/include/c++/13/istream:325:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(void*&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  325 |       operator>>(void*& __p)
      |       ^~~~~~~~
/usr/include/c++/13/istream:325:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'void*' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(void*)y1' to 'void*&'
/usr/include/c++/13/istream:201:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  201 |       operator>>(unsigned long long& __n)
      |       ^~~~~~~~
/usr/include/c++/13/istream:201:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'long long unsigned int' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(long long unsigned int)y1' to 'long long unsigned int&'
/usr/include/c++/13/istream:197:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long long int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  197 |       operator>>(long long& __n)
      |       ^~~~~~~~
/usr/include/c++/13/istream:197:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'long long int' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(long long int)y1' to 'long long int&'
/usr/include/c++/13/istream:192:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  192 |       operator>>(unsigned long& __n)
      |       ^~~~~~~~
/usr/include/c++/13/istream:192:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'long unsigned int' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(long unsigned int)y1' to 'long unsigned int&'
/usr/include/c++/13/istream:188:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  188 |       operator>>(long& __n)
      |       ^~~~~~~~
/usr/include/c++/13/istream:188:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'long int' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(long int)y1' to 'long int&'
/usr/include/c++/13/istream:184:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  184 |       operator>>(unsigned int& __n)
      |       ^~~~~~~~
/usr/include/c++/13/istream:184:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'unsigned int' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(unsigned int)y1' to 'unsigned int&'
/usr/include/c++/13/istream:181:7: note: candidate: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(int&) [with _CharT = char; _Traits = std::char_traits<char>]' (near match)
  181 |       operator>>(int& __n);
      |       ^~~~~~~~
/usr/include/c++/13/istream:181:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'int' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(int)y1' to 'int&'
/usr/include/c++/13/istream:177:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(short unsigned int&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  177 |       operator>>(unsigned short& __n)
      |       ^~~~~~~~
/usr/include/c++/13/istream:177:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'short unsigned int' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(short unsigned int)y1' to 'short unsigned int&'
/usr/include/c++/13/istream:174:7: note: candidate: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(short int&) [with _CharT = char; _Traits = std::char_traits<char>]' (near match)
  174 |       operator>>(short& __n);
      |       ^~~~~~~~
/usr/include/c++/13/istream:174:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'short int' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
Main.cpp:42:21: error: cannot bind rvalue '(short int)y1' to 'short int&'
/usr/include/c++/13/istream:170:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(bool&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  170 |       operator>>(bool& __n)
      |       ^~~~~~~~
/usr/include/c++/13/istream:170:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: cannot bind non-const lvalue reference of type 'bool&' to a value of type 'double (*)(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/istream:122:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(__istream_type& (*)(__istream_type&)) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  122 |       operator>>(__istream_type& (*__pf)(__istream_type&))
      |       ^~~~~~~~
/usr/include/c++/13/istream:122:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'std::basic_istream<char>::__istream_type& (*)(std::basic_istream<char>::__istream_type&)' {aka 'std::basic_istream<char>& (*)(std::basic_istream<char>&)'} [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
/usr/include/c++/13/istream:126:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(__ios_type& (*)(__ios_type&)) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>; __ios_type = std::basic_ios<char>]' (near match)
  126 |       operator>>(__ios_type& (*__pf)(__ios_type&))
      |       ^~~~~~~~
/usr/include/c++/13/istream:126:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'std::basic_istream<char>::__ios_type& (*)(std::basic_istream<char>::__ios_type&)' {aka 'std::basic_ios<char>& (*)(std::basic_ios<char>&)'} [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
/usr/include/c++/13/istream:133:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(std::ios_base& (*)(std::ios_base&)) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]' (near match)
  133 |       operator>>(ios_base& (*__pf)(ios_base&))
      |       ^~~~~~~~
/usr/include/c++/13/istream:133:7: note:   conversion of argument 1 would be ill-formed:
Main.cpp:42:21: error: invalid conversion from 'double (*)(double) noexcept' to 'std::ios_base& (*)(std::ios_base&)' [-fpermissive]
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
      |                     |
      |                     double (*)(double) noexcept
/usr/include/c++/13/istream:224:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(long double&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
  224 |       operator>>(long double& __f)
      |       ^~~~~~~~
/usr/include/c++/13/istream:224:31: note:   no known conversion for argument 1 from 'double(double) noexcept' to 'long double&'
  224 |       operator>>(long double& __f)
      |                  ~~~~~~~~~~~~~^~~
/usr/include/c++/13/istream:220:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(double&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
  220 |       operator>>(double& __f)
      |       ^~~~~~~~
/usr/include/c++/13/istream:220:26: note:   no known conversion for argument 1 from 'double(double) noexcept' to 'double&'
  220 |       operator>>(double& __f)
      |                  ~~~~~~~~^~~
/usr/include/c++/13/istream:216:7: note: candidate: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::operator>>(float&) [with _CharT = char; _Traits = std::char_traits<char>; __istream_type = std::basic_istream<char>]'
  216 |       operator>>(float& __f)
      |       ^~~~~~~~
/usr/include/c++/13/istream:216:25: note:   no known conversion for argument 1 from 'double(double) noexcept' to 'float&'
  216 |       operator>>(float& __f)
      |                  ~~~~~~~^~~
/usr/include/c++/13/istream:349:7: note: candidate: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::operator>>(__streambuf_type*) [with _CharT = char; _Traits = std::char_traits<char>; __streambuf_type = std::basic_streambuf<char>]'
  349 |       operator>>(__streambuf_type* __sb);
      |       ^~~~~~~~
/usr/include/c++/13/istream:349:36: note:   no known conversion for argument 1 from 'double(double) noexcept' to 'std::basic_istream<char>::__streambuf_type*' {aka 'std::basic_streambuf<char>*'}
  349 |       operator>>(__streambuf_type* __sb);
      |                  ~~~~~~~~~~~~~~~~~~^~~~
In file included from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:41:
/usr/include/c++/13/cstddef:130:5: note: candidate: 'template<class _IntegerType> constexpr std::__byte_op_t<_IntegerType> std::operator>>(byte, _IntegerType)'
  130 |     operator>>(byte __b, _IntegerType __shift) noexcept
      |     ^~~~~~~~
/usr/include/c++/13/cstddef:130:5: note:   template argument deduction/substitution failed:
Main.cpp:42:15: note:   cannot convert '(& std::cin.std::basic_istream<char>::operator>>(n))->std::basic_istream<char>::operator>>(x1)' (type 'std::basic_istream<char>::__istream_type' {aka 'std::basic_istream<char>'}) to type 'std::byte'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |         ~~~~~~^~~~
In file included from /usr/include/c++/13/string:55,
                 from /usr/include/c++/13/bitset:52,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:52:
/usr/include/c++/13/bits/basic_string.tcc:827:5: note: candidate: 'template<class _CharT, class _Traits, class _Alloc> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, __cxx11::basic_string<_CharT, _Traits, _Allocator>&)'
  827 |     operator>>(basic_istream<_CharT, _Traits>& __in,
      |     ^~~~~~~~
/usr/include/c++/13/bits/basic_string.tcc:827:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::__cxx11::basic_string<_CharT, _Traits, _Allocator>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bitset:1593:5: note: candidate: 'template<class _CharT, class _Traits, long unsigned int _Nb> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, bitset<_Nb>&)'
 1593 |     operator>>(std::basic_istream<_CharT, _Traits>& __is, bitset<_Nb>& __x)
      |     ^~~~~~~~
/usr/include/c++/13/bitset:1593:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::bitset<_Nb>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
In file included from /usr/include/c++/13/istream:1106:
/usr/include/c++/13/bits/istream.tcc:975:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _CharT&)'
  975 |     operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c)
      |     ^~~~~~~~
/usr/include/c++/13/bits/istream.tcc:975:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   deduced conflicting types for parameter '_CharT' ('char' and 'double(double) noexcept')
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/istream:846:5: note: candidate: 'template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(basic_istream<char, _Traits>&, unsigned char&)'
  846 |     operator>>(basic_istream<char, _Traits>& __in, unsigned char& __c)
      |     ^~~~~~~~
/usr/include/c++/13/istream:846:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'unsigned char&'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/istream:851:5: note: candidate: 'template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(basic_istream<char, _Traits>&, signed char&)'
  851 |     operator>>(basic_istream<char, _Traits>& __in, signed char& __c)
      |     ^~~~~~~~
/usr/include/c++/13/istream:851:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'signed char&'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/istream:893:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _CharT*)'
  893 |     operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s)
      |     ^~~~~~~~
/usr/include/c++/13/istream:893:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   deduced conflicting types for parameter '_CharT' ('char' and 'double(double) noexcept')
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/istream:936:5: note: candidate: 'template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(basic_istream<char, _Traits>&, unsigned char*)'
  936 |     operator>>(basic_istream<char, _Traits>& __in, unsigned char* __s)
      |     ^~~~~~~~
/usr/include/c++/13/istream:936:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'unsigned char*'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/istream:942:5: note: candidate: 'template<class _Traits> std::basic_istream<char, _Traits>& std::operator>>(basic_istream<char, _Traits>&, signed char*)'
  942 |     operator>>(basic_istream<char, _Traits>& __in, signed char* __s)
      |     ^~~~~~~~
/usr/include/c++/13/istream:942:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'signed char*'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/istream:1096:5: note: candidate: 'template<class _Istream, class _Tp> _Istream&& std::operator>>(_Istream&&, _Tp&&)'
 1096 |     operator>>(_Istream&& __is, _Tp&& __x)
      |     ^~~~~~~~
/usr/include/c++/13/istream:1096:5: note:   template argument deduction/substitution failed:
/usr/include/c++/13/istream: In substitution of 'template<class _Istream, class _Tp> _Istream&& std::operator>>(_Istream&&, _Tp&&) [with _Istream = std::basic_istream<char>&; _Tp = double (&)(double) noexcept]':
Main.cpp:42:14:   required from here
/usr/include/c++/13/istream:1096:5: error: no type named 'type' in 'struct std::enable_if<false, void>'
/usr/include/c++/13/complex:504:5: note: candidate: 'template<class _Tp, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, complex<_Tp>&)'
  504 |     operator>>(basic_istream<_CharT, _Traits>& __is, complex<_Tp>& __x)
      |     ^~~~~~~~
/usr/include/c++/13/complex:504:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::complex<_Tp>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
In file included from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:143:
/usr/include/c++/13/iomanip:73:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _Resetiosflags)'
   73 |     operator>>(basic_istream<_CharT, _Traits>& __is, _Resetiosflags __f)
      |     ^~~~~~~~
/usr/include/c++/13/iomanip:73:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'std::_Resetiosflags'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/iomanip:103:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _Setiosflags)'
  103 |     operator>>(basic_istream<_CharT, _Traits>& __is, _Setiosflags __f)
      |     ^~~~~~~~
/usr/include/c++/13/iomanip:103:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'std::_Setiosflags'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/iomanip:134:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _Setbase)'
  134 |     operator>>(basic_istream<_CharT, _Traits>& __is, _Setbase __f)
      |     ^~~~~~~~
/usr/include/c++/13/iomanip:134:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'std::_Setbase'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/iomanip:172:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _Setfill<_CharT>)'
  172 |     operator>>(basic_istream<_CharT, _Traits>& __is, _Setfill<_CharT> __f)
      |     ^~~~~~~~
/usr/include/c++/13/iomanip:172:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::_Setfill<_CharT>' and 'double (*)(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/iomanip:202:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _Setprecision)'
  202 |     operator>>(basic_istream<_CharT, _Traits>& __is, _Setprecision __f)
      |     ^~~~~~~~
/usr/include/c++/13/iomanip:202:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'std::_Setprecision'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/iomanip:232:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _Setw)'
  232 |     operator>>(basic_istream<_CharT, _Traits>& __is, _Setw __f)
      |     ^~~~~~~~
/usr/include/c++/13/iomanip:232:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'std::_Setw'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/iomanip:266:5: note: candidate: 'template<class _CharT, class _Traits, class _MoneyT> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _Get_money<_MoneyT>)'
  266 |     operator>>(basic_istream<_CharT, _Traits>& __is, _Get_money<_MoneyT> __f)
      |     ^~~~~~~~
/usr/include/c++/13/iomanip:266:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::_Get_money<_MoneyT>' and 'double (*)(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/iomanip:420:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, _Get_time<_CharT>)'
  420 |     operator>>(basic_istream<_CharT, _Traits>& __is, _Get_time<_CharT> __f)
      |     ^~~~~~~~
/usr/include/c++/13/iomanip:420:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::_Get_time<_CharT>' and 'double (*)(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
In file included from /usr/include/c++/13/valarray:605,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:166:
/usr/include/c++/13/bits/valarray_after.h:414:5: note: candidate: 'template<class _Dom1, class _Dom2> std::_Expr<std::__detail::_BinClos<std::__shift_right, std::_Expr, std::_Expr, _Dom1, _Dom2>, typename std::__fun<std::__shift_right, typename _Dom1::value_type>::result_type> std::operator>>(const _Expr<_Dom1, typename _Dom1::value_type>&, const _Expr<_Dom2, typename _Dom2::value_type>&)'
  414 |     _DEFINE_EXPR_BINARY_OPERATOR(>>, struct std::__shift_right)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/valarray_after.h:414:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   'std::basic_istream<char>::__istream_type' {aka 'std::basic_istream<char>'} is not derived from 'const std::_Expr<_Dom1, typename _Dom1::value_type>'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/valarray_after.h:414:5: note: candidate: 'template<class _Dom> std::_Expr<std::__detail::_BinClos<std::__shift_right, std::_Expr, std::_Constant, _Dom, typename _Dom::value_type>, typename std::__fun<std::__shift_right, typename _Dom1::value_type>::result_type> std::operator>>(const _Expr<_Dom1, typename _Dom1::value_type>&, const typename _Dom::value_type&)'
  414 |     _DEFINE_EXPR_BINARY_OPERATOR(>>, struct std::__shift_right)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/valarray_after.h:414:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   'std::basic_istream<char>::__istream_type' {aka 'std::basic_istream<char>'} is not derived from 'const std::_Expr<_Dom1, typename _Dom1::value_type>'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/valarray_after.h:414:5: note: candidate: 'template<class _Dom> std::_Expr<std::__detail::_BinClos<std::__shift_right, std::_Constant, std::_Expr, typename _Dom::value_type, _Dom>, typename std::__fun<std::__shift_right, typename _Dom1::value_type>::result_type> std::operator>>(const typename _Dom::value_type&, const _Expr<_Dom1, typename _Dom1::value_type>&)'
  414 |     _DEFINE_EXPR_BINARY_OPERATOR(>>, struct std::__shift_right)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/valarray_after.h:414:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'const std::_Expr<_Dom1, typename _Dom1::value_type>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/valarray_after.h:414:5: note: candidate: 'template<class _Dom> std::_Expr<std::__detail::_BinClos<std::__shift_right, std::_Expr, std::_ValArray, _Dom, typename _Dom::value_type>, typename std::__fun<std::__shift_right, typename _Dom1::value_type>::result_type> std::operator>>(const _Expr<_Dom1, typename _Dom1::value_type>&, const valarray<typename _Dom::value_type>&)'
  414 |     _DEFINE_EXPR_BINARY_OPERATOR(>>, struct std::__shift_right)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/valarray_after.h:414:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   'std::basic_istream<char>::__istream_type' {aka 'std::basic_istream<char>'} is not derived from 'const std::_Expr<_Dom1, typename _Dom1::value_type>'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/valarray_after.h:414:5: note: candidate: 'template<class _Dom> std::_Expr<std::__detail::_BinClos<std::__shift_right, std::_ValArray, std::_Expr, typename _Dom::value_type, _Dom>, typename std::__fun<std::__shift_right, typename _Dom1::value_type>::result_type> std::operator>>(const valarray<typename _Dom::value_type>&, const _Expr<_Dom1, typename _Dom1::value_type>&)'
  414 |     _DEFINE_EXPR_BINARY_OPERATOR(>>, struct std::__shift_right)
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/bits/valarray_after.h:414:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'const std::_Expr<_Dom1, typename _Dom1::value_type>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/valarray:1205:1: note: candidate: 'template<class _Tp> std::_Expr<std::__detail::_BinClos<std::__shift_right, std::_ValArray, std::_ValArray, _Tp, _Tp>, typename std::__fun<std::__shift_right, _Tp>::result_type> std::operator>>(const valarray<_Tp>&, const valarray<_Tp>&)'
 1205 | _DEFINE_BINARY_OPERATOR(>>, __shift_right)
      | ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/valarray:1205:1: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   'std::basic_istream<char>::__istream_type' {aka 'std::basic_istream<char>'} is not derived from 'const std::valarray<_Tp>'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/valarray:1205:1: note: candidate: 'template<class _Tp> std::_Expr<std::__detail::_BinClos<std::__shift_right, std::_ValArray, std::_Constant, _Tp, _Tp>, typename std::__fun<std::__shift_right, _Tp>::result_type> std::operator>>(const valarray<_Tp>&, const typename valarray<_Tp>::value_type&)'
 1205 | _DEFINE_BINARY_OPERATOR(>>, __shift_right)
      | ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/valarray:1205:1: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   'std::basic_istream<char>::__istream_type' {aka 'std::basic_istream<char>'} is not derived from 'const std::valarray<_Tp>'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/valarray:1205:1: note: candidate: 'template<class _Tp> std::_Expr<std::__detail::_BinClos<std::__shift_right, std::_Constant, std::_ValArray, _Tp, _Tp>, typename std::__fun<std::__shift_right, _Tp>::result_type> std::operator>>(const typename valarray<_Tp>::value_type&, const valarray<_Tp>&)'
 1205 | _DEFINE_BINARY_OPERATOR(>>, __shift_right)
      | ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/13/valarray:1205:1: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'const std::valarray<_Tp>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
In file included from /usr/include/c++/13/random:53,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:179:
/usr/include/c++/13/bits/random.tcc:930:5: note: candidate: 'template<class _IntType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, uniform_int_distribution<_IntType>&)'
  930 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:930:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::uniform_int_distribution<_IntType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:991:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, uniform_real_distribution<_IntType>&)'
  991 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:991:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::uniform_real_distribution<_IntType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:2168:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, cauchy_distribution<_RealType>&)'
 2168 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:2168:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::cauchy_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
In file included from /usr/include/c++/13/random:51:
/usr/include/c++/13/bits/random.h:3830:5: note: candidate: 'template<class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, bernoulli_distribution&)'
 3830 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.h:3830:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   cannot convert 'y1' (type 'double(double) noexcept') to type 'std::bernoulli_distribution&'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:1133:5: note: candidate: 'template<class _IntType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, geometric_distribution<_IntType>&)'
 1133 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:1133:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::geometric_distribution<_IntType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:1784:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, exponential_distribution<_RealType>&)'
 1784 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:1784:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::exponential_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:2562:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, weibull_distribution<_RealType>&)'
 2562 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:2562:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::weibull_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:2636:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, extreme_value_distribution<_RealType>&)'
 2636 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:2636:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::extreme_value_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:177:5: note: candidate: 'template<class _UIntType, _UIntType __a, _UIntType __c, _UIntType __m, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, linear_congruential_engine<_UIntType, __a, __c, __m>&)'
  177 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:177:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::linear_congruential_engine<_UIntType, __a, __c, __m>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:504:5: note: candidate: 'template<class _UIntType1, long unsigned int __w1, long unsigned int __n1, long unsigned int __m1, long unsigned int __r1, _UIntType1 __a1, long unsigned int __u1, _UIntType1 __d1, long unsigned int __s1, _UIntType1 __b1, long unsigned int __t1, _UIntType1 __c1, long unsigned int __l1, _UIntType1 __f1, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, mersenne_twister_engine<_UIntType, __w, __n, __m, __r, __a, __u, __d, __s, __b, __t, __c, __l, __f>&)'
  504 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:504:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::mersenne_twister_engine<_UIntType, __w, __n, __m, __r, __a, __u, __d, __s, __b, __t, __c, __l, __f>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:659:5: note: candidate: 'template<class _UIntType, long unsigned int __w, long unsigned int __s, long unsigned int __r, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, subtract_with_carry_engine<_UIntType, __w, __s, __r>&)'
  659 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:659:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::subtract_with_carry_engine<_UIntType, __w, __s, __r>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:726:5: note: candidate: 'template<class _RandomNumberEngine, long unsigned int __p, long unsigned int __r, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, discard_block_engine<_RandomNumberEngine, __p, __r>&)'
  726 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:726:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::discard_block_engine<_RandomNumberEngine, __p, __r>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:890:5: note: candidate: 'template<class _RandomNumberEngine, long unsigned int __k, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, shuffle_order_engine<_RandomNumberEngine, __k>&)'
  890 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:890:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::shuffle_order_engine<_RandomNumberEngine, __k>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:1248:5: note: candidate: 'template<class _IntType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, negative_binomial_distribution<_IntType>&)'
 1248 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:1248:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::negative_binomial_distribution<_IntType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:1458:5: note: candidate: 'template<class _IntType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, poisson_distribution<_IntType>&)'
 1458 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:1458:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::poisson_distribution<_IntType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:1725:5: note: candidate: 'template<class _IntType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, binomial_distribution<_IntType>&)'
 1725 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:1725:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::binomial_distribution<_IntType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:1946:5: note: candidate: 'template<class _RealType1, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, normal_distribution<_RealType>&)'
 1946 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:1946:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::normal_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:2011:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, lognormal_distribution<_RealType>&)'
 2011 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:2011:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::lognormal_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:2082:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, chi_squared_distribution<_RealType>&)'
 2082 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:2082:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::chi_squared_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:2244:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, fisher_f_distribution<_RealType>&)'
 2244 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:2244:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::fisher_f_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:2317:5: note: candidate: 'template<class _RealType, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, student_t_distribution<_RealType>&)'
 2317 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:2317:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::student_t_distribution<_RealType>' and 'double(double) noexcept'
   42 |         cin>>n>>x1>>y1>>x2>>y2; x1--,y1--,x2--,y2--; vi h(n); f0r(i,n)cin>>h[i]; segtree S = segtree(h);
      |                     ^~
/usr/include/c++/13/bits/random.tcc:2487:5: note: candidate: 'template<class _RealType1, class _CharT, class _Traits> std::basic_istream<_CharT, _Traits>& std::operator>>(basic_istream<_CharT, _Traits>&, gamma_distribution<_RealType>&)'
 2487 |     operator>>(std::basic_istream<_CharT, _Traits>& __is,
      |     ^~~~~~~~
/usr/include/c++/13/bits/random.tcc:2487:5: note:   template argument deduction/substitution failed:
Main.cpp:42:21: note:   mismatched types 'std::gamma_distribution<_RealType>' and 'double(double) no