QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#802729#9863. Bracketsucup-team087#AC ✓569ms87456kbC++2328.3kb2024-12-07 14:31:162024-12-10 04:37:02

Judging History

你现在查看的是最新测评结果

  • [2024-12-10 04:37:02]
  • 自动重测本题所有获得100分的提交记录
  • 测评结果:AC
  • 用时:569ms
  • 内存:87456kb
  • [2024-12-10 04:34:15]
  • hack成功,自动添加数据
  • (/hack/1275)
  • [2024-12-07 14:31:24]
  • 评测
  • 测评结果:100
  • 用时:596ms
  • 内存:87428kb
  • [2024-12-07 14:31:16]
  • 提交

answer

#ifndef LOCAL
#pragma GCC optimize ("Ofast")
#pragma GCC optimize ("unroll-loops")
#endif

#include <bits/stdc++.h>
using namespace std;

using ll=long long;
#define int ll

bool dbg=false;

#define rng(i,a,b) for(int i=int(a);i<int(b);i++)
#define rep(i,b) rng(i,0,b)
#define gnr(i,a,b) for(int i=int(b)-1;i>=int(a);i--)
#define per(i,b) gnr(i,0,b)
#define pb push_back
#define eb emplace_back
#define a first
#define b second
#define bg begin()
#define ed end()
#define all(x) x.bg,x.ed
#define si(x) int(x.size())
#ifdef LOCAL
#define dmp(x) cerr<<__LINE__<<" "<<#x<<" "<<x<<endl
#else
#define dmp(x) void(0)
#endif

template<class t,class u> bool chmax(t&a,u b){if(a<b){a=b;return true;}else return false;}
template<class t,class u> bool chmin(t&a,u b){if(b<a){a=b;return true;}else return false;}

template<class t> using vc=vector<t>;
template<class t> using vvc=vc<vc<t>>;

using pi=pair<int,int>;
using vi=vc<int>;
using vvi=vc<vc<int>>;

template<class t,class u>
ostream& operator<<(ostream& os,const pair<t,u>& p){
	return os<<"{"<<p.a<<","<<p.b<<"}";
}

template<class t> ostream& operator<<(ostream& os,const vc<t>& v){
	os<<"{";
	for(auto e:v)os<<e<<",";
	return os<<"}";
}

#define mp make_pair
#define mt make_tuple
#define one(x) memset(x,-1,sizeof(x))
#define zero(x) memset(x,0,sizeof(x))
#ifdef LOCAL
void dmpr(ostream&os){os<<endl;}
template<class T,class... Args>
void dmpr(ostream&os,const T&t,const Args&... args){
	os<<t<<" ";
	dmpr(os,args...);
}
#define dmp2(...) dmpr(cerr,__LINE__,##__VA_ARGS__)
#else
#define dmp2(...) void(0)
#endif

using uint=unsigned;
using ull=unsigned long long;

template<class t,size_t n>
ostream& operator<<(ostream&os,const array<t,n>&a){
	return os<<vc<t>(all(a));
}

ll rand_int(ll l, ll r) { //[l, r]
	//#ifdef LOCAL
	static mt19937_64 gen;
	/*#else
	static mt19937_64 gen(chrono::steady_clock::now().time_since_epoch().count());
	#endif*/
	return uniform_int_distribution<ll>(l, r)(gen);
}

ll rand_int(ll k){ //[0,k)
	return rand_int(0,k-1);
}
string rand_string(int n,char lw,char up){
	string s(n,'?');
	rep(i,n)s[i]=rand_int(lw,up);
	return s;
}

int current_run_id,run_batch_size=1000;
int calc_random_limit(){
	return current_run_id/run_batch_size+1;
}
template<class t>
void generate_single(t&a){
	a=rand_int(1,calc_random_limit());
}
void generate_single(string&a){
	int n;generate_single(n);
	a=rand_string(n,'a','b');
}
template<class t,class u>
void generate_single(pair<t,u>&a){
	generate_single(a.a);
	generate_single(a.b);
}
//https://trap.jp/post/1224/
template<class... Args>
void input(Args&... a){
	if(dbg){
		(generate_single(a),...);
	}else{
		#ifdef USE_FAST_IO
		sc.read(a...);
		#else
		(cin >> ... >> a);
		#endif
	}
}
#define INT(...) int __VA_ARGS__;input(__VA_ARGS__)
#define LL(...) ll __VA_ARGS__;input(__VA_ARGS__)
#define ULL(...) ull __VA_ARGS__;input(__VA_ARGS__)
#define STR(...) string __VA_ARGS__;input(__VA_ARGS__)
#define CHR(...) char __VA_ARGS__;input(__VA_ARGS__)
#define DBL(...) double __VA_ARGS__;input(__VA_ARGS__)
#define LD(...) ld __VA_ARGS__;input(__VA_ARGS__)
#define overload3(a,b,c,d,...) d
#define VI2(name,size) vi name(size);rep(i_##name,size)input(name[i_##name]);
#define VI3(name,size,offset) vi name(size);rep(i_##name,size)input(name[i_##name]),name[i_##name]+=offset;
#define VI(...) overload3(__VA_ARGS__,VI3,VI2)(__VA_ARGS__)
#define VPI(name,size) vc<pi> name(size);rep(i_##name,size)input(name[i_##name]);
#define VVI(name,sizeN,sizeM) vvi name(sizeN,vi(sizeM));\
rep(i_##name,sizeN)rep(j_##name,sizeM)input(name[i_##name][j_##name]);
#define VS(name,size) vc<string> name(size);rep(i_##name,size)input(name[i_##name]);
#define VMI(name,size) vc<mint> name(size);rep(i_##name,size){INT(tmp_##name);name[i_##name]=tmp_##name;};

#define overload5(a,b,c,d,e,f,...) f
#define VVC4(type,name,sizeN,sizeM) vvc<type> name(sizeN,vc<type>(sizeM));
#define VVC5(type,name,sizeN,sizeM,ini) vvc<type> name(sizeN,vc<type>(sizeM,ini));
#define VVC(...) overload5(__VA_ARGS__,VVC5,VVC4)(__VA_ARGS__)

template<class T>
T vvvc(T v){
	return v;
}

template<class T,class...Args>
auto vvvc(int n,T v,Args...args){
	return vector(n,vvvc(v,args...));
}

template<int i,class T>
void print_tuple(ostream&,const T&){
}

template<int i,class T,class H,class ...Args>
void print_tuple(ostream&os,const T&t){
	if(i)os<<",";
	os<<get<i>(t);
	print_tuple<i+1,T,Args...>(os,t);
}

template<class ...Args>
ostream& operator<<(ostream&os,const tuple<Args...>&t){
	os<<"{";
	print_tuple<0,tuple<Args...>,Args...>(os,t);
	return os<<"}";
}

void printsuc(int suc){
	#ifdef USE_FAST_IO
		if(suc==1)pr.write('\n');
		if(suc==2)pr.write(' ');
	#else
		if(suc==1){
			if(dbg)cout<<endl;
			else{
				#ifdef LOCAL
				cout<<endl;
				#else
				cout<<"\n";
				#endif
			}
		}
		if(suc==2)
			cout<<" ";
	#endif
}

template<class t>
void print_single(t x,int suc=1){
	#ifdef USE_FAST_IO
	pr.write(x);
	#else
	cout<<x;
	#endif
	printsuc(suc);
}

template<class t,class u>
void print_single(const pair<t,u>&p,int suc=1){
	print_single(p.a,2);
	print_single(p.b,suc);
}

template<class T>
void print_single(const vector<T>&v,int suc=1){
	rep(i,v.size())
		print_single(v[i],i==int(v.size())-1?3:2);
	printsuc(suc);
}

template<class T,size_t N>
void print_single(const array<T,N>&v,int suc=1){
	rep(i,N)
		print_single(v[i],i==int(N)-1?3:2);
	printsuc(suc);
}

template<class T>
void print(const T&t){
	print_single(t);
}

template<class T,class ...Args>
void print(const T&t,const Args&...args){
	print_single(t,2);
	print(args...);
}

template<class T>
void printvv(const vvc<T>&vs){
	for(const auto&row:vs)print(row);
}

string readString(){
	string s;
	cin>>s;
	return s;
}

template<class T>
T sq(const T& t){
	return t*t;
}

void YES(bool ex=true){
	cout<<"YES\n";
	if(ex)exit(0);
	#ifdef LOCAL
	cout.flush();
	#endif
}
void NO(bool ex=true){
	cout<<"NO\n";
	if(ex)exit(0);
	#ifdef LOCAL
	cout.flush();
	#endif
}
void Yes(bool ex=true){
	cout<<"Yes\n";
	if(ex)exit(0);
	#ifdef LOCAL
	cout.flush();
	#endif
}
void No(bool ex=true){
	cout<<"No\n";
	if(ex)exit(0);
	#ifdef LOCAL
	cout.flush();
	#endif
}
//#define CAPITAL
/*
void yes(bool ex=true){
	#ifdef CAPITAL
	cout<<"YES"<<"\n";
	#else
	cout<<"Yes"<<"\n";
	#endif
	if(ex)exit(0);
	#ifdef LOCAL
	cout.flush();
	#endif
}
void no(bool ex=true){
	#ifdef CAPITAL
	cout<<"NO"<<"\n";
	#else
	cout<<"No"<<"\n";
	#endif
	if(ex)exit(0);
	#ifdef LOCAL
	cout.flush();
	#endif
}*/
void possible(bool ex=true){
	#ifdef CAPITAL
	cout<<"POSSIBLE"<<"\n";
	#else
	cout<<"Possible"<<"\n";
	#endif
	if(ex)exit(0);
	#ifdef LOCAL
	cout.flush();
	#endif
}
void impossible(bool ex=true){
	#ifdef CAPITAL
	cout<<"IMPOSSIBLE"<<"\n";
	#else
	cout<<"Impossible"<<"\n";
	#endif
	if(ex)exit(0);
	#ifdef LOCAL
	cout.flush();
	#endif
}

constexpr ll ten(int n){
	return n==0?1:ten(n-1)*10;
}

const ll infLL=LLONG_MAX/3;

#ifdef int
const int inf=infLL;
#else
const int inf=INT_MAX/2-100;
#endif

int topbit(signed t){
	return t==0?-1:31-__builtin_clz(t);
}
int topbit(ll t){
	return t==0?-1:63-__builtin_clzll(t);
}
int topbit(ull t){
	return t==0?-1:63-__builtin_clzll(t);
}
int botbit(signed a){
	return a==0?32:__builtin_ctz(a);
}
int botbit(ll a){
	return a==0?64:__builtin_ctzll(a);
}
int botbit(ull a){
	return a==0?64:__builtin_ctzll(a);
}
int popcount(signed t){
	return __builtin_popcount(t);
}
int popcount(ll t){
	return __builtin_popcountll(t);
}
int popcount(ull t){
	return __builtin_popcountll(t);
}
int bitparity(ll t){
	return __builtin_parityll(t);
}
bool ispow2(int i){
	return i&&(i&-i)==i;
}
ll mask(int i){
	return (ll(1)<<i)-1;
}
ull umask(int i){
	return (ull(1)<<i)-1;
}
ll minp2(ll n){
	if(n<=1)return 1;
	else return ll(1)<<(topbit(n-1)+1);
}

bool inc(int a,int b,int c){
	return a<=b&&b<=c;
}

template<class S> void mkuni(S&v){
	sort(all(v));
	v.erase(unique(all(v)),v.ed);
}

template<class t> bool isuni(vc<t> v){
	int s=si(v);
	mkuni(v);
	return si(v)==s;
}

template<class t>
void myshuffle(vc<t>&a){
	rep(i,si(a))swap(a[i],a[rand_int(0,i)]);
}

template<class S,class u>
int lwb(const S&v,const u&a){
	return lower_bound(all(v),a)-v.bg;
}
template<class t,class u>
bool bis(const vc<t>&v,const u&a){
	return binary_search(all(v),a);
}

//VERIFY: yosupo
//KUPC2017J
//AOJDSL1A
//without rank
struct unionfind{
	vi p,s;
	int c;
	unionfind(int n):p(n,-1),s(n,1),c(n){}
	void clear(){
		fill(all(p),-1);
		fill(all(s),1);
		c=si(p);
	}
	int find(int a){
		return p[a]==-1?a:(p[a]=find(p[a]));
	}
	//set b to a child of a
	bool unite(int a,int b){
		a=find(a);
		b=find(b);
		if(a==b)return false;
		p[b]=a;
		s[a]+=s[b];
		c--;
		return true;
	}
	bool same(int a,int b){
		return find(a)==find(b);
	}
	int sz(int a){
		return s[find(a)];
	}
};

vvc<int> readGraph(int n,int m){
	vvc<int> g(n);
	rep(i,m){
		int a,b;
		cin>>a>>b;
		//sc.read(a,b);
		a--;b--;
		g[a].pb(b);
		g[b].pb(a);
	}
	return g;
}

vvc<int> rand_tree(int n){
	vvc<int> t(n);
	unionfind uf(n);
	while(uf.c>1){
		int a=rand_int(n);
		int b=rand_int(n);
		if(uf.unite(a,b)){
			t[a].pb(b);
			t[b].pb(a);
		}
	}
	return t;
}

vvc<int> readTree(int n){
	if(dbg){
		return rand_tree(n);
	}else{
		return readGraph(n,n-1);
	}
}

vi readRooted(int n){
	assert(!dbg);
	vi par(n,-1);
	rng(i,1,n){
		input(par[i]);
		par[i]--;
		assert(inc(0,par[i],i-1));
	}
	return par;
}

void printTree(const vvc<int> t){
	int n=si(t);
	int degsum=0;
	rep(i,n)degsum+=si(t[i]);
	if(degsum==n-1){
		//directed
		rep(i,si(t))for(auto j:t[i]){
			print(i+1,j+1);
		}
	}else if(degsum==2*(n-1)){
		//undirected
		rep(i,si(t))for(auto j:t[i])if(i<j){
			print(i+1,j+1);
		}
	}else{
		assert(false);
	}
}

template<class t>
vc<t> presum(const vc<t>&a){
	vc<t> s(si(a)+1);
	rep(i,si(a))s[i+1]=s[i]+a[i];
	return s;
}
vc<ll> presum(const vi&a){
	vc<ll> s(si(a)+1);
	rep(i,si(a))s[i+1]=s[i]+a[i];
	return s;
}
//BIT で数列を管理するときに使う (CF850C)
template<class t>
vc<t> predif(vc<t> a){
	gnr(i,1,si(a))a[i]-=a[i-1];
	return a;
}
template<class t>
vvc<ll> imos(const vvc<t>&a){
	int n=si(a),m=si(a[0]);
	vvc<ll> b(n+1,vc<ll>(m+1));
	rep(i,n)rep(j,m)
		b[i+1][j+1]=b[i+1][j]+b[i][j+1]-b[i][j]+a[i][j];
	return b;
}

//verify してないや
void transvvc(int&n,int&m){
	swap(n,m);
}
template<class t,class... Args>
void transvvc(int&n,int&m,vvc<t>&a,Args&...args){
	assert(si(a)==n);
	vvc<t> b(m,vi(n));
	rep(i,n){
		assert(si(a[i])==m);
		rep(j,m)b[j][i]=a[i][j];
	}
	a.swap(b);
	transvvc(n,m,args...);
}
//CF854E
void rotvvc(int&n,int&m){
	swap(n,m);
}
template<class t,class... Args>
void rotvvc(int&n,int&m,vvc<t>&a,Args&...args){
	assert(si(a)==n);
	vvc<t> b(m,vi(n));
	rep(i,n){
		assert(si(a[i])==m);
		rep(j,m)b[m-1-j][i]=a[i][j];
	}
	a.swap(b);
	rotvvc(n,m,args...);
}

//ソートして i 番目が idx[i]
//CF850C
template<class t>
vi sortidx(const vc<t>&a){
	int n=si(a);
	vi idx(n);iota(all(idx),0);
	sort(all(idx),[&](int i,int j){return a[i]<a[j];});
	return idx;
}
//vs[i]=a[idx[i]]
//例えば sortidx で得た idx を使えば単にソート列になって返ってくる
//CF850C
template<class t>
vc<t> a_idx(const vc<t>&a,const vi&idx){
	int n=si(a);
	assert(si(idx)==n);
	vc<t> vs(n);
	rep(i,n)vs[i]=a[idx[i]];
	return vs;
}
//CF850C
vi invperm(const vi&p){
	int n=si(p);
	vi q(n);
	rep(i,n)q[p[i]]=i;
	return q;
}

template<class t,class s=t>
s SUM(const vc<t>&a){
	return accumulate(all(a),s(0));
}
template<class t,size_t K,class s=t>
s SUM(const array<t,K>&a){
	return accumulate(all(a),s(0));
}

template<class t>
t MAX(const vc<t>&a){
	return *max_element(all(a));
}

template<class t>
pair<t,int> MAXi(const vc<t>&a){
	auto itr=max_element(all(a));
	return mp(*itr,itr-a.bg);
}

template<class A>
auto MIN(const A&a){
	return *min_element(all(a));
}

template<class t>
pair<t,int> MINi(const vc<t>&a){
	auto itr=min_element(all(a));
	return mp(*itr,itr-a.bg);
}

vi vid(int n){
	vi res(n);iota(all(res),0);
	return res;
}

template<class S>
void soin(S&s){
	sort(all(s));
}

template<class S,class F>
void soin(S&s,F&&f){
	sort(all(s),forward<F>(f));
}

template<class S>
S soout(S s){
	soin(s);
	return s;
}

template<class S>
void rein(S&s){
	reverse(all(s));
}

template<class S>
S reout(S s){
	rein(s);
	return s;
}

template<class t,class u>
pair<t,u>&operator+=(pair<t,u>&a,pair<t,u> b){
	a.a+=b.a;a.b+=b.b;return a;}
template<class t,class u>
pair<t,u>&operator-=(pair<t,u>&a,pair<t,u> b){
	a.a-=b.a;a.b-=b.b;return a;}
template<class t,class u>
pair<t,u> operator+(pair<t,u> a,pair<t,u> b){return mp(a.a+b.a,a.b+b.b);}
template<class t,class u>
pair<t,u> operator-(pair<t,u> a,pair<t,u> b){return mp(a.a-b.a,a.b-b.b);}
template<class t,class u,class v>
pair<t,u>&operator*=(pair<t,u>&a,v b){
	a.a*=b;a.b*=b;return a;}
template<class t,class u,class v>
pair<t,u> operator*(pair<t,u> a,v b){return a*=b;}
template<class t,class u>
pair<t,u> operator-(pair<t,u> a){return mp(-a.a,-a.b);}
namespace std{
template<class t,class u>
istream&operator>>(istream&is,pair<t,u>&a){
	return is>>a.a>>a.b;
}
}

template<class t,size_t n>
array<t,n>&operator+=(array<t,n>&a,const array<t,n>&b){
	rep(i,n)a[i]+=b[i];
	return a;
}
template<class t,size_t n,class v>
array<t,n>&operator*=(array<t,n>&a,v b){
	rep(i,n)a[i]*=b;
	return a;
}
template<class t,size_t n,class v>
array<t,n> operator*(array<t,n> a,v b){return a*=b;}

template<class t>
t gpp(vc<t>&vs){
	assert(si(vs));
	t res=move(vs.back());
	vs.pop_back();
	return res;
}

template<class t,class u>
void pb(vc<t>&a,const vc<u>&b){
	a.insert(a.ed,all(b));
}

template<class t,class...Args>
vc<t> cat(vc<t> a,Args&&...b){
	(pb(a,forward<Args>(b)),...);
	return a;
}

template<class t,class u>
vc<t>& operator+=(vc<t>&a,u x){
	for(auto&v:a)v+=x;
	return a;
}

template<class t,class u>
vc<t> operator+(vc<t> a,u x){
	return a+=x;
}

template<class t>
vc<t>& operator+=(vc<t>&a,const vc<t>&b){
	a.resize(max(si(a),si(b)));
	rep(i,si(b))a[i]+=b[i];
	return a;
}

template<class t>
vc<t> operator+(const vc<t>&a,const vc<t>&b){
	vc<t> c(max(si(a),si(b)));
	rep(i,si(a))c[i]+=a[i];
	rep(i,si(b))c[i]+=b[i];
	return c;
}

template<class t,class u>
vc<t>& operator-=(vc<t>&a,u x){
	for(auto&v:a)v-=x;
	return a;
}
template<class t,class u>
vc<t> operator-(vc<t> a,u x){
	return a-=x;
}
template<class t>
vc<t>& operator-=(vc<t>&a,const vc<t>&b){
	a.resize(max(si(a),si(b)));
	rep(i,si(b))a[i]-=b[i];
	return a;
}
/*
template<class t>
vc<t> operator-(const vc<t>&a,const vc<t>&b){
	vc<t> c(max(si(a),si(b)));
	rep(i,si(a))c[i]+=a[i];
	rep(i,si(b))c[i]-=b[i];
	return c;
}
*/
template<class t,class u>
vc<t>& operator*=(vc<t>&a,u x){
	for(auto&v:a)v*=x;
	return a;
}
template<class t,class u>
vc<t> operator*(vc<t> a,u x){
	return a*=x;
}

template<class t,class u>
vc<t>& operator/=(vc<t>&a,u x){
	for(auto&v:a)v/=x;
	return a;
}
template<class t,class u>
vc<t> operator/(vc<t> a,u x){
	return a/=x;
}

template<class t>
vc<t>& operator<<=(vc<t>&a,int k){
	assert(k>=0);
	a.insert(a.bg,k,t(0));
	return a;
}
template<class t>
vc<t> operator<<(vc<t> a,int k){
	return a<<=k;
}

template<class t>
vc<t>& operator>>=(vc<t>&a,int k){
	if(si(a)<=k)a.clear();
	else a.erase(a.bg,a.bg+k);
	return a;
}
template<class t>
vc<t> operator>>(vc<t> a,int k){
	return a>>=k;
}

template<class t,class u>
void remval(vc<t>&a,const u&v){
	a.erase(remove(all(a),v),a.ed);
}
//消した要素の個数を返してくれる
//UCUP 2-8-F
template<class t,class F>
int remif(vc<t>&a,F f){
	auto itr=remove_if(all(a),f);
	int res=a.ed-itr;
	a.erase(itr,a.ed);
	return res;
}
template<class t>
void rempos(vc<t>&a,int i){
	assert(inc(0,i,si(a)-1));
	a.erase(a.bg+i);
}

template<class VS,class u>
void fila(VS&vs,const u&a){
	fill(all(vs),a);
}

template<class t,class u>
int findid(const vc<t>&vs,const u&a){
	auto itr=find(all(vs),a);
	if(itr==vs.ed)return -1;
	else return itr-vs.bg;
}

template<class t>
void rtt(vc<t>&vs,int i){
	rotate(vs.bg,vs.bg+i,vs.ed);
}

//Multiuni2023-8 C
//f(lw)=false,...,f(n-1)=false,f(n)=true,...,f(up)=true,
//のときに n を返す
template<class F>
int find_min_true(int lw,int up,F f){
	while(up-lw>1){
		const int mid=(lw+up)/2;
		if(f(mid))up=mid;
		else lw=mid;
	}
	return up;
}
//f(lw)=true,f(up)=false
template<class F>
int find_max_true(int lw,int up,F f){
	while(up-lw>1){
		const int mid=(lw+up)/2;
		if(f(mid))lw=mid;
		else up=mid;
	}
	return lw;
}

template<class t> using pqmin=priority_queue<t,vc<t>,greater<t>>;
template<class t> using pqmax=priority_queue<t>;
using T=tuple<int,int,int>;

//Montgomery
//Ucup1-10 G (モンゴメリじゃないとTLE)
struct modinfo{
	using u128=__uint128_t;
	ull n,n2,r,t,e;
	modinfo(ull nn){
		n=nn;
        assert(n<(1ull<<62));
        assert(n%2==1);
        n2=n*2;
        r=n&3;
        rep(_,5)r*=2-n*r;
        r=-r;
        assert(r*n==-1ull);
        t=-ull(n)%n;
        e=-u128(n)%n;
	}
	ull add(ull x,ull y)const{x+=y;return x<n2?x:x-n2;}
	ull re(u128 x)const{return (x+u128(ull(x)*r)*n)>>64;}
	ull mult(ull x,ull y)const{return re(u128(x)*y);}
	ull en(ull x)const{return mult(x,e);}
	ull de(ull x)const{x=re(x);return x<n?x:x-n;}
};
template<modinfo const&ref>
struct modular{
	static constexpr ull const &mod=ref.n;
	static constexpr ull const &mod2=ref.n2;
	ull v;
	modular(ll vv=0){v=ref.en(vv%(ll)mod+mod);}
	modular operator-()const{return modular()-*this;}
	modular&operator+=(const modular&rhs){v=ref.add(v,rhs.v);return *this;}
	modular&operator-=(const modular&rhs){v=ref.add(v,mod2-rhs.v);return *this;}
	modular&operator*=(const modular&rhs){v=ref.mult(v,rhs.v);return *this;}
	modular&operator/=(const modular&rhs){return *this*=rhs.inv();}
	modular operator+(const modular&rhs)const{return modular(*this)+=rhs;}
	modular operator-(const modular&rhs)const{return modular(*this)-=rhs;}
	modular operator*(const modular&rhs)const{return modular(*this)*=rhs;}
	modular operator/(const modular&rhs)const{return modular(*this)/=rhs;}
	modular pow(ll n)const{
		modular res(1),x(*this);
		while(n){
			if(n&1)res*=x;
			x*=x;
			n>>=1;
		}
		return res;
	}
	modular inv()const{return pow(mod-2);}
	friend modular operator+(ll x,const modular&y){
		return modular(x)+y;
	}
	friend modular operator-(ll x,const modular&y){
		return modular(x)-y;
	}
	friend modular operator*(ll x,const modular&y){
		return modular(x)*y;
	}
	friend modular operator/(ll x,const modular&y){
		return modular(x)/y;
	}
	ull val()const{return ref.de(v);}
	friend ostream& operator<<(ostream&os,const modular&m){
		return os<<m.val();
	}
	friend istream& operator>>(istream&is,modular&m){
		ll x;is>>x;
		m=modular(x);
		return is;
	}
	bool operator<(const modular&r)const{return val()<r.val();}
	bool operator==(const modular&r)const{return val()==r.val();}
	bool operator!=(const modular&r)const{return val()!=r.val();}
	explicit operator bool()const{
		return val();
	}
};

template<class mint>
ll m2l(mint a){
	ull v=a.val();
	return v<mint::mod/2?v:ll(v)-ll(mint::mod);
}

//2^62 未満での最大の素数
const modinfo base(4611686018427387847ll);
//modinfo base(1);
using mint=modular<base>;

//random primitive root
//3277392570379474389

mint parity(int i){
	return i%2==0?1:-1;
}

vc<mint> powbuf(mint v,int n){
	vc<mint> res(n+1);
	res[0]=1;
	rep(i,n)res[i+1]=res[i]*v;
	return res;
}

//N() が単位元
//VERIFY: yosupo
//CF407E
template<class N>
struct segtree{
	vc<N> x;
	int n,s;
	segtree(){}
	template<class t>
	segtree(const vc<t>&a){
		n=a.size();
		s=1;
		while(s<n){s*=2;}
		x.resize(s*2);
		rep(i,n)
			x[s+i]=N(a[i]);
		gnr(i,1,s)
			x[i]=N::merge(x[i*2],x[i*2+1]);
	}
	//NOT Verified
	segtree(int nn){
		resize(nn);
	}
	void resize(int nn){
		n=nn;
		s=1;
		while(s<n){s*=2;}
		x.assign(s*2,N());
		gnr(i,1,s)
			x[i]=N::merge(x[i*2],x[i*2+1]);
	}
	template<class t>
	void init(const vc<t>&a){
		n=a.size();
		s=1;
		while(s<n){s*=2;}
		x.resize(s*2);
		rep(i,n)
			x[s+i]=N(a[i]);
		rng(i,n,s)
			x[s+i]=N();
		gnr(i,1,s)
			x[i]=N::merge(x[i*2],x[i*2+1]);
	}
	void clear(){
		rep(i,n)
			x[s+i]=N();
		gnr(i,1,s)
			x[i]=N::merge(x[i*2],x[i*2+1]);
	}
	N point_get(int i){
		assert(inc(0,i,n-1));
		return x[i+s];
	}
	void point_set(int i,const N&t){
		assert(inc(0,i,n-1));
		i+=s;
		x[i]=t;
		while(i>>=1)x[i]=N::merge(x[i*2],x[i*2+1]);
	}
	void point_merge(int i,const N&t){
		assert(inc(0,i,n-1));
		i+=s;
		x[i]=N::merge(x[i],t);
		while(i>>=1)x[i]=N::merge(x[i*2],x[i*2+1]);
	}
	template<class F,class...Args>
	void point_change(int i,F f,Args&&...args){
		assert(inc(0,i,n-1));
		i+=s;
		(x[i].*f)(forward<Args>(args)...);
		while(i>>=1)x[i]=N::merge(x[i*2],x[i*2+1]);
	}
	N composite(int b,int e){
		assert(0<=b&&b<=e&&e<=n);
		N lf,rt;
		for(int l=b+s,r=e+s;l<r;l>>=1,r>>=1){
			if (l&1){
				lf=N::merge(lf,x[l]);
				l++;
			}
			if (r&1){
				r--;
				rt=N::merge(x[r],rt);
			}
		}
		return N::merge(lf,rt);
	}
	N getall(){
		return x[1];
	}
	//UTPC2020E
	//n 超えるかもしれない
	template <class F,class... Args> 
	pair<int,N> max_right(int l,F f,Args&&... args){
		assert((N().*f)(forward<Args>(args)...));
		assert(0<=l&&l<=n);
		if(l==n)return mp(n,N());
		l+=s;
		
		N sm;
		assert((sm.*f)(forward<Args>(args)...));
		do {
			while (l % 2 == 0) l >>= 1;
			if (!(N::merge(sm,x[l]).*f)(forward<Args>(args)...)){
				while (l < s) {
					l = (2 * l);
					N tmp=N::merge(sm,x[l]);
					if ((tmp.*f)(forward<Args>(args)...)) {
						sm = tmp;
						l++;
					}
				}
				return mp(l - s,sm);
			}
			sm = N::merge(sm, x[l]);
			l++;
		} while ((l & -l) != l);
		return mp(n,sm);
	}
	//UCUP-2-22-K
	template <class F,class... Args> 
	pair<int,N> min_left_withinit(int r,N sm,F f,Args&&... args){
		assert((sm.*f)(forward<Args>(args)...));
		assert(0<=r&&r<=n);
        if(r==0)return mp(0,sm);
        r+=s;
        do {
            r--;
            while (r > 1 && (r % 2)) r >>= 1;
            if (!(N::merge(x[r],sm).*f)(forward<Args>(args)...)) {
                while (r < s) {
                    r = (2 * r + 1);
                    N tmp=N::merge(x[r],sm);
                    if ((tmp.*f)(forward<Args>(args)...)) {
                        sm = tmp;
                        r--;
                    }
                }
                return mp(r + 1 - s,sm);
            }
            sm = N::merge(x[r], sm);
        } while ((r & -r) != r);
        return mp(0,sm);
    }
	//UTPC2020E
	template <class F,class... Args> 
	pair<int,N> min_left(int r,F f,Args&&... args){
		return min_left_withinit(r,N(),f,forward<Args>(args)...);
    }
    //行列とか乗せて必要なのはベクトルとの積,みたいなときに使える?
    //CF Goodbye 2016 E
    //CF 896 F
	template<class F,class T,class... Args>
	T accumulate(int l,int r,F f,T t,Args&&... args) {
		assert(0<=l&&l<=r&&r<=n);
		static int buf[2][30];
		int cnt[2]{};
		for(l+=s,r+=s;l<r;l>>=1,r>>=1){
			if(l&1)buf[0][cnt[0]++]=l;
			if(r&1)buf[1][cnt[1]++]=r-1;
			l++;
		}
		rep(i,cnt[0])t=(x[buf[0][i]].*f)(t,forward<Args>(args)...);
		per(i,cnt[1])t=(x[buf[1][i]].*f)(t,forward<Args>(args)...);
		return t;
	}
};

const mint B=3277392570379474389;
const mint Binv=B.inv();
mint X[4],Xinv[4];

struct N{
	int l,r;
	mint v,w;
	N():l(0),r(0),v(0),w(1){}
	N(int a){
		if(a%2==0){
			l=1;
			r=0;
			v=X[a/2];
			w=B;
		}else{
			l=0;
			r=1;
			v=-X[a/2]*Binv;
			w=Binv;
		}
	}
	static N merge(const N&a,const N&b){
		N res;
		res.l=max(a.l,b.l-a.r+a.l);
		res.r=max(a.r-b.l+b.r,b.r);
		res.v=a.v+b.v*a.w;
		res.w=a.w*b.w;
		return res;
	}
};

//sz: size of the matching
//mt[i]: matching mate of the vertex i
//VERIFY: yosupo
//NEERC2018B
//Petrozavodsk 2019w Day1 A
//頂点をランダムシャッフルすることで速くなる(UTPC2022)
//頂点を見る順番をランダムにするよりも入力のグラフをランダムにしたほうがいい(なんで?)
struct maxmatching{
	struct E{int a,b;};
	const vvc<int>&g;
	int n,sz;
	vi p,t,mt;
	vc<E> f;
	int non(int v){
		return t[v]!=sz||p[v]==-1?v:(p[v]=non(p[v]));
	}
	void R(int a,int b){
		int d=mt[a];
		mt[a]=b;
		if(d==-1||mt[d]!=a)return;
		if(f[a].b==-1){
			mt[d]=f[a].a;
			R(f[a].a,d);
		}else{
			R(f[a].a,f[a].b);
			R(f[a].b,f[a].a);
		}
	}
	bool arg(int rt){
		static vi q;q.clear();
		int head=0;
		t[rt]=sz;
		p[rt]=-1;
		f[rt]=E{-1,-1};
		q.pb(rt);
		while(head<si(q)){
			int a=q[head++];
			for(auto b:g[a]){
				if(b==rt)continue;
				if(mt[b]==-1){
					mt[b]=a;
					R(a,b);
					return true;
				}
				if(t[b]==sz){
					int x=non(a),y=non(b);
					if(x==y)continue;
					int z=rt;
					while(x!=rt||y!=rt){
						if(y!=rt)swap(x,y);
						if(f[x].a==a&&f[x].b==b){
							z=x;
							break;
						}
						f[x]=E{a,b};
						x=non(f[mt[x]].a);
					}
					for(auto v:{non(a),non(b)}){
						while(v!=z){
							t[v]=sz;
							p[v]=z;
							q.pb(v);
							v=non(f[mt[v]].a);
						}
					}
					continue;
				}
				if(t[mt[b]]==sz)continue;
				f[b]=E{-1,-1};
				t[mt[b]]=sz;
				p[mt[b]]=b;
				f[mt[b]]=E{a,-1};
				q.pb(mt[b]);
			}
		}
		return false;
	}
	maxmatching(const vvc<int>&gg):g(gg),n(g.size()),sz(0),
		p(n),t(n,-1),mt(n,-1),f(n){
		rep(i,n)if(mt[i]==-1){
			sz+=arg(i);
		}
	}
	//codechef HAMILG
	//res[i]=最大マッチングに必ず含まれるべき頂点なら 1, そうでないなら 0
	vi need(){
		rep(i,n)if(mt[i]==-1)
			arg(i);
		vi res(n);
		rep(i,n)res[i]=(mt[i]!=-1&&t[i]!=sz);
		return res;
	}
};


const string bra="()[]{}<>";

vi sub(vi a){
	int n=si(a);
	vi jump2=vid(n+1);
	per(i,n){
		if(a[i]%2==0){
			int j=jump2[i+1];
			if(j==-1||j==n)continue;
			if(a[j]==a[i]+1){
				jump2[i]=jump2[j+1];
			}
		}else{
		}
	}
	dmp2(jump2);
	vi res=vid(n+1);
	per(i,n){
		int j=jump2[i];
		if(j<n&&a[j]%2==0){
			res[i]=res[j+1];
		}else{
			res[i]=j;
		}
	}
	return res;
}

bool check(vi x){
	vi cur;
	for(auto v:x){
		if(v%2==0)cur.pb(v);
		else{
			if(si(cur)&&cur.back()==v-1)cur.pop_back();
			else return false;
		}
	}
	return cur.empty();
}

void slv(){
	INT(n,m);
	STR(ini);
	vi a(n);
	if(dbg){
		rep(i,n)a[i]=rand_int(8);
	}else{
		rep(i,n)a[i]=bra.find(ini[i]);
	}
	vi l2r=sub(a);
	vi r2l;
	{
		vi b(n);
		rep(i,n)b[i]=a[i]^1;
		r2l=reout(sub(reout(b)));
		rep(i,n+1)r2l[i]=n-r2l[i];
	}
	
	dmp(l2r);
	dmp(r2l);
	
	int single=0;
	map<mint,pi> buf;
	
	segtree<N> seg(a);
	
	vc<pi> qs;
	
	rep(_,m){
		INT(l,r);
		l--;
		if(dbg){
			l=rand_int(n);
			r=rand_int(l+1,n);
		}
		qs.eb(l,r);
		if(r<=l2r[l]){
			if(r2l[r]<=l){
				single++;
			}else{
				auto w=seg.composite(l,r);
				//dmp2(w.v);
				buf[w.v].a++;
			}
		}else{
			if(r2l[r]<=l){
				auto w=seg.composite(l,r);
				//dmp2(-w.v/w.w);
				buf[-w.v/w.w].b++;
			}else{
				
			}
		}
	}
	
	dmp(single);
	
	int ans=single/2;
	for(auto [key,val]:buf)
		ans+=min(val.a,val.b);
	
	if(dbg){
		int s=si(qs);
		vvc<int> g(s);
		rep(i,s)rng(j,i+1,s){
			bool ok=false;
			{
				vi x;
				rng(k,qs[i].a,qs[i].b)
					x.pb(a[k]);
				rng(k,qs[j].a,qs[j].b)
					x.pb(a[k]);
				if(check(x))ok=true;
			}
			{
				vi x;
				rng(k,qs[j].a,qs[j].b)
					x.pb(a[k]);
				rng(k,qs[i].a,qs[i].b)
					x.pb(a[k]);
				if(check(x))ok=true;
			}
			if(ok){
				g[i].pb(j);
				g[j].pb(i);
			}
		}
		int god=maxmatching(g).sz;
		
		if(god!=ans){
			print(n,m);
			print(a);
			print(qs);
			print(god,ans);
		}
		assert(god==ans);
	}
	
	print(ans);
}

signed main(signed argc,char*argv[]){
	if(argc>1&&strcmp(argv[1],"D")==0)dbg=true;
	
	cin.tie(0);
	ios::sync_with_stdio(0);
	cout<<fixed<<setprecision(20);
	
	rep(k,4){
		X[k]=rand_int(mint::mod);
		Xinv[k]=X[k].inv();
	}
	
	if(dbg){
		while(1){
			if(current_run_id%run_batch_size==0){
				cerr<<"Current Run "<<current_run_id<<endl;
			}
			slv();
			current_run_id++;
		}
	}else{
		int t;cin>>t;rep(_,t)
		slv();
	}
}

这程序好像有点Bug,我给组数据试试?

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3912kb

input:

4
8 1
()[]{}<>
3 6
2 6
)(
1 1
1 1
1 1
2 2
2 2
2 2
6 2
([)(])
1 3
4 6
22 8
([{}<<<<])>>>>([]){()}
3 8
11 14
1 10
3 4
19 22
20 21
17 20
21 22

output:

0
3
0
2

result:

ok 4 number(s): "0 3 0 2"

Test #2:

score: 0
Accepted
time: 66ms
memory: 3856kb

input:

10000
50 50
]][][>([<)}{>(([<<>[]}[}>(}([}[><[}<[}<<(]]<>[]>)<
16 50
19 31
6 34
19 49
14 44
26 49
10 43
28 49
13 16
23 39
4 26
30 43
20 27
10 20
25 44
12 42
27 34
2 8
29 44
11 42
18 42
1 4
1 47
31 31
26 47
22 44
16 35
15 48
35 41
17 20
11 13
20 21
9 45
13 46
33 47
35 46
22 26
2 37
14 39
34 34
41 44
...

output:

0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
1
0
0
0
0
1
0
0
0
0
...

result:

ok 10000 numbers

Test #3:

score: 0
Accepted
time: 42ms
memory: 3748kb

input:

1000
50 500
[]]})<{>]){[[><>[{](}}{<(<)<{]{><><}>([[{(}(><}>{]
25 46
19 30
23 41
27 34
5 11
8 42
40 46
24 34
7 47
44 45
13 13
9 44
18 32
12 23
24 38
35 49
31 36
14 46
2 9
7 44
27 41
15 22
42 44
21 49
27 50
28 36
6 26
15 47
22 40
6 25
25 43
5 45
19 19
10 40
6 20
30 36
39 44
14 32
17 31
7 47
24 34
2 8...

output:

3
6
11
4
6
6
3
4
5
9
6
5
6
6
3
4
7
4
1
2
11
3
3
2
4
9
5
13
5
8
4
4
4
3
2
1
4
4
3
5
6
4
7
8
3
6
7
5
4
4
5
2
2
7
3
6
3
8
13
5
0
2
8
2
6
2
12
2
4
3
4
3
4
7
2
3
9
7
4
12
1
2
4
5
6
4
4
3
3
7
5
6
6
10
9
8
8
9
3
3
5
6
0
7
9
8
3
3
5
2
4
9
7
6
10
3
4
5
4
3
7
3
5
7
4
2
3
2
7
4
4
4
6
10
3
6
8
8
6
5
2
3
4
3
6
4...

result:

ok 1000 numbers

Test #4:

score: 0
Accepted
time: 36ms
memory: 3800kb

input:

100
50 5000
[)[){>})}>>][<>}[{{))}<(<]}[})>>})<)[((({}<}>}}>[[
38 49
47 48
43 46
5 50
8 11
21 29
11 32
8 8
9 13
1 18
35 48
12 12
24 45
6 19
13 42
30 37
23 41
17 21
40 43
3 31
3 11
9 31
17 35
1 49
9 50
43 47
1 9
8 43
11 19
40 47
6 42
7 31
23 37
30 46
5 30
33 38
8 25
21 39
1 1
27 31
15 35
9 11
7 37
26...

output:

54
99
81
80
54
68
58
33
67
78
73
78
86
95
74
46
101
99
89
82
85
57
53
96
112
76
91
72
42
78
98
72
77
106
63
76
60
91
83
68
64
69
106
77
81
66
41
73
93
61
58
55
63
51
43
78
48
71
134
64
69
112
53
73
61
50
80
91
79
63
75
80
49
62
75
80
78
54
59
48
55
73
63
71
69
94
69
51
87
68
69
102
61
70
61
80
54
62...

result:

ok 100 numbers

Test #5:

score: 0
Accepted
time: 45ms
memory: 5152kb

input:

10
50 50000
[(>><<)>][<]<>>>]{>{>{<({>[[(>[[<{)>]()>[{}]))}>[(
15 24
12 46
2 21
3 38
13 31
3 29
24 37
11 27
11 24
21 42
14 15
15 23
15 45
11 19
17 45
2 16
38 49
9 32
18 30
17 46
29 35
16 24
16 44
31 50
37 45
25 50
39 46
14 46
45 50
21 36
6 14
16 39
38 47
21 22
22 32
14 46
5 31
39 41
37 48
23 33
10 1...

output:

804
1376
493
630
817
973
747
761
810
694

result:

ok 10 numbers

Test #6:

score: 0
Accepted
time: 38ms
memory: 13616kb

input:

1
50 500000
({>([[[]>)>)[)(<<[}({]>{){<[}}{{}}(]){{[>)()<{{]{}
39 42
2 15
13 38
8 15
39 50
2 11
9 33
11 47
28 39
26 29
7 33
38 39
19 25
3 24
11 38
6 30
7 32
8 34
12 50
21 27
26 39
20 46
27 32
46 48
30 41
22 48
32 37
17 26
28 31
23 29
24 40
10 43
28 49
39 45
40 45
24 28
11 29
10 27
21 31
10 18
1 38
7...

output:

9905

result:

ok 1 number(s): "9905"

Test #7:

score: 0
Accepted
time: 53ms
memory: 3772kb

input:

1000
500 500
)<}]<{>((]>]<[}}[}>{[]][[((}(}<<>])[}{[{{[<){<}[([{}}>{}<((<[}][{[(<[}(}>]({[]({})}{<}>})[{{{>]]))[>(>)][}}}>[<{))((>{<[]{[>{[>)}[(<{]}>{(}[])>)}]()>{({{({>{><}({([>>}(}{)}<[]]><[(<}}]}}[}]{(}[>{][}(<}[><)}]]))(]{(<(}][()]}{{{{){{<[{))]](<(]>({[{)[{]<(>]<>}[<{<}([])><{}{[]}}[>))[[]}<]}[...

output:

0
0
1
0
0
1
0
0
1
0
0
1
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
1
1
1
0
0
0
0
0
0
0
0
0
0
...

result:

ok 1000 numbers

Test #8:

score: 0
Accepted
time: 39ms
memory: 3812kb

input:

100
500 5000
}(>]<{[>}>)(><<})(}<[](]{}]<<]>{{}]>}(<>{]>{)[<<}<(<)]<[>)<{>{){{{][}<>}{((<[))})><])>)>{(<[)(>[{<([}<{)})<>{[)]<))>){([()[}]<)>}[))}(}]}])}<}}>[<()){]]}}[>}<>[}>>>}}[]<>>[([<)>}{[)}]])[>>()[]<(([}{{[><[}][[){>{([[<)>[>}[}(]([<{<}[>(>(<<]]()[(}[(<}{}{)}{]()>({>){[[[{<)>({>(((])[>[)<{(}]...

output:

7
5
9
2
6
4
3
12
5
5
2
3
7
6
3
8
9
9
10
9
3
6
7
6
8
2
13
6
7
2
5
6
5
7
4
8
5
4
4
5
5
6
9
7
6
5
1
3
1
7
7
2
10
3
6
3
5
6
12
5
13
4
14
4
6
5
4
7
4
3
3
3
7
7
3
5
6
4
6
5
10
1
6
6
2
2
6
8
4
4
5
6
4
2
8
9
4
10
4
4

result:

ok 100 numbers

Test #9:

score: 0
Accepted
time: 27ms
memory: 5160kb

input:

10
500 50000
]}){>(](][]>>[]}>{(>][](<)]((([({}{>[>](<{}[>}{>)<}}{>[([}(<})[)<({)>)(>][{]({[({[([}<<>>{[][}>[[<)[}<]<)]){]<<(([(>()>}<>)>[})[>>][}>[{((]{>]>><}}]{>}[<}<][())}{][<[>)(>[{{]}<{{><)()>><><{<}>{{()())}[[<][>){{}>)(})])]<)>>(}}>[>]])(}((([<[[}[{](}><{[][]{>[<<[{>)}]))><[((<([<])(]()}{]({{...

output:

104
101
118
107
118
122
136
107
109
113

result:

ok 10 numbers

Test #10:

score: 0
Accepted
time: 42ms
memory: 13232kb

input:

1
500 500000
<[)[}](<}[{}>{>>()(><>){>>>([<<{]}][{[([>}]}}{<}[>)]<{{(}{<}({)[[<[]{}<<[{(<{({]<)(((}}{<<[)(>)({[)]>}[[(({><(([{(}}{]}()]}<]}(>>]}}}(}>((<()}[(}]([[}[}<}<{((<<}(><{(}]]]<)(<]>([[(]]<[<]})(>)}})(><}}(>{{](])<}}[}<}(>>}]>)]]{><>)[}[<<()}]}<<{{(]]{)}]{>}}[]]{(}])[<]>){>(])}<(})]>([[>)]]<)...

output:

1109

result:

ok 1 number(s): "1109"

Test #11:

score: 0
Accepted
time: 56ms
memory: 4568kb

input:

100
5000 5000
[][]}(<{>{(](}]>}<>}(]<}})(]<]>>(<{}{<(<><{<[}[{[{){)){(]<{]][[}]><[>[]]]>(](]([{(]<<{]<<[(}]>{}]<()>}})]<{[]>>{)[}[(<[}{{{[>[>><{[[[<([(]){))<>]]((<})>>{)(({]]<>}}[}{})<}>{[}}))](({(]<[<)}]<[[)([<[>[<([}])}{]><]<(([)>]{<)[]])][<<][(((<><}<)[)((]([)[([{<<<>(>{]>>{}<}(<)}]{{}>>{(}}]<)<(...

output:

0
0
2
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

result:

ok 100 numbers

Test #12:

score: 0
Accepted
time: 40ms
memory: 6000kb

input:

10
5000 50000
}}>]]}][()]]{)(>)[)>({>{{}>}{}]{<())>>[}]>{)]()}[><)({}>>}]<))[)><(<]{>(>(]<{[>)}>([)>(){({><)>}[(}])})[}}>[<>[}([>[]<)][<]>}{))>}>>()(]]{(<)(](}){)>><{)(><}](]{}<[(({{]>>)<{([{]<({{){[{(}<{{}])]{)]<{{<]]{]]{](}<[{[]{{>]()<<](}<{(}]>>{{]<{}{()])>>[>>[({)}>{[{<()))[{[}]{)}<{]([<[(]<]{)}...

output:

7
3
8
9
8
7
5
6
3
8

result:

ok 10 numbers

Test #13:

score: 0
Accepted
time: 45ms
memory: 12552kb

input:

1
5000 500000
>([><])])><{<>)(>[>()]>[)[<<[){[(>}<()[)}{}[}{(>[)>[[})<(>]<([}><>[[(>}]()>{][[[{()>)<}>}{[]}{>)]<[)<{[[(>]]>(}[{(})>)]])[]{(<{><<{}]]){>})<)<]<[({>[]{{[><)))])(}(}})]]{][})}{<>(}){}>[]<{[(]}>(<<)<(>>>){(>{<][()>{({]){{><<()}<<[<>}<(>)({]]]](<[]]])<]<)[)<([>)>]<<[(<){>[[([)<)>>}]()[>{}...

output:

117

result:

ok 1 number(s): "117"

Test #14:

score: 0
Accepted
time: 64ms
memory: 11344kb

input:

10
50000 50000
][[<(}{{[{[<<(<}>)[<[)))][]}<]}[>>>}[}{({)}>>[>{[[(]>)<>{[(][}][)]<([}<>]<]]>{)<{](}][}(]]><}>[>)(>()<[])]]{}><}]{]]{[<<(}(}>[{((<]{<>(]}(})[[}()<>}{])(]<](<}(}}]){)()>(<)[{}<>}><]]}>>{((>{(<<()))[){>({((}()]>)(<><>){[(]({>{)>])[]){>[))}{>[>]]{[()([{[][([<)<(<(}(}}({>[(>><<)>][<]<>>>]...

output:

0
0
0
1
0
1
0
0
0
0

result:

ok 10 numbers

Test #15:

score: 0
Accepted
time: 41ms
memory: 19212kb

input:

1
50000 500000
<<[})>}]{]}{>)]]{{{}){(])<{{]((()<[<]([>[){(}[){>}<(<[]<<}{[{<{({><{{[[(<)<[[{[])<])]()}[}(<}{]}<[{>{}<<[[{(<><<][]<>([[<<>>}{}>(<<>{)}[}{{{[{<>{<<[])<}))[<{<[>(]]}]>>](>(}}[)}{{}[}]<{]}>)](]](){([<{)[{(]>)>){[>>>>)){[([){<}>(((><}{[)[>([))]]}[){>]})}(})}}<)><{((}]((>)]}>){}[)[)[{({{[...

output:

5

result:

ok 1 number(s): "5"

Test #16:

score: 0
Accepted
time: 94ms
memory: 67832kb

input:

1
500000 500000
>}<(]){){[<)<[)(<[<})<)>]}]>)[[](<{}]]>[([{{{<>(]>))()<]][((<>[>(>}([<<){{<{){)><}([>{>}](>>]}}(>[)((](}>>])}]<[)}))})]])([]>{]<}<)}<(<>)]]{)]<]]}>}]([>>)({[}})]]](]><}])>{]{)){>><(>{){])]}>[[([)>(([)](<)<<({}][{{()>)>}<<[]({[]{]))[]((]>[[{}>)(>[[]{]}>><<]>]>><{{)])}](>>[{}]))<<{>)(}...

output:

0

result:

ok 1 number(s): "0"

Test #17:

score: 0
Accepted
time: 280ms
memory: 19580kb

input:

1
50000 500000
(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((...

output:

208440

result:

ok 1 number(s): "208440"

Test #18:

score: 0
Accepted
time: 204ms
memory: 5860kb

input:

10
5000 50000
((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((...

output:

20871
20772
20815
20864
20869
20894
20859
20778
20929
20988

result:

ok 10 numbers

Test #19:

score: 0
Accepted
time: 169ms
memory: 3880kb

input:

100
500 5000
(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))))))))))))))))))))))))))))))...

output:

2098
2095
2104
2080
2090
2048
2090
2092
2063
2099
2110
2083
2083
2084
2066
2077
2069
2128
2097
2054
2056
2094
2076
2062
2061
2060
2103
2086
2116
2061
2090
2099
2075
2097
2084
2115
2113
2141
2025
2124
2080
2056
2086
2079
2074
2094
2069
2066
2135
2117
2067
2099
2081
2082
2086
2090
2083
2080
2093
2082
...

result:

ok 100 numbers

Test #20:

score: 0
Accepted
time: 131ms
memory: 3936kb

input:

1000
50 500
((((((((((((((((((((((((()))))))))))))))))))))))))
16 37
28 47
8 41
13 47
6 9
7 11
22 27
14 18
29 45
7 43
34 45
5 29
24 28
5 26
24 46
3 11
1 13
27 40
10 43
34 40
3 48
40 50
22 42
10 40
1 24
10 42
17 24
6 24
26 45
7 38
1 32
9 39
22 43
14 50
9 47
11 39
14 17
5 28
28 42
7 44
27 34
7 11
27 2...

output:

204
198
212
215
203
200
209
197
194
207
203
196
214
216
204
196
205
207
207
202
206
199
208
208
206
213
209
211
209
211
211
211
195
209
213
215
195
199
213
196
198
203
214
208
212
216
205
216
210
216
199
196
208
213
217
212
214
209
201
207
218
204
206
199
211
208
204
213
200
214
205
220
206
215
208
...

result:

ok 1000 numbers

Test #21:

score: 0
Accepted
time: 114ms
memory: 3848kb

input:

10000
5 50
(()))
3 3
4 5
3 5
4 5
2 5
3 5
4 5
1 3
5 5
2 3
2 5
3 5
1 5
4 5
1 3
3 3
2 5
1 5
2 5
1 2
2 5
2 2
1 5
4 5
2 4
5 5
5 5
2 5
2 2
1 2
3 5
2 5
1 5
2 5
2 3
4 5
1 3
4 5
2 2
4 5
3 3
1 4
3 4
1 3
1 4
2 4
2 4
5 5
5 5
1 4
5 50
(()))
3 3
3 4
4 5
2 4
3 4
1 2
2 5
3 5
1 2
1 1
4 4
4 5
5 5
1 2
4 4
2 4
3 5
3 4
...

output:

11
13
17
14
14
11
19
13
14
22
14
9
16
19
14
13
11
13
16
16
19
16
16
14
10
16
15
17
18
19
14
16
17
17
17
19
20
12
12
12
21
13
16
13
16
14
13
19
16
13
16
18
15
19
15
15
19
13
15
15
11
13
18
17
9
15
21
14
17
17
12
13
15
11
16
17
13
13
12
15
11
16
20
21
16
14
14
14
16
12
20
17
12
17
19
15
19
15
16
14
20...

result:

ok 10000 numbers

Test #22:

score: 0
Accepted
time: 226ms
memory: 67804kb

input:

1
500000 500000
((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((...

output:

248787

result:

ok 1 number(s): "248787"

Test #23:

score: 0
Accepted
time: 120ms
memory: 67924kb

input:

1
500000 500000
[}<(>[<[([)]{(()}{(>][)])[[(<[][<>){>(}}{]}<}<[<}>)<]{[<[}{<(}><]{(<>>(<)><((<()<}<{])(<[)[]][>(>]]>>)(<<{[([(][><(>{()}](}<}[{({}]}(}{{]{]<}}[)((}){)>[}){>(]}>[(>[){{((<([({}>)}()}})}<{>>]>[]><>}[{([<])}]}{]]{<>>](>([<}<<]<}<{<]>(]{[><<)(}}}({(][>[[[)[<)(]({<}}}[[[(}[<><>)><[})}{{[]...

output:

53182

result:

ok 1 number(s): "53182"

Test #24:

score: 0
Accepted
time: 79ms
memory: 67988kb

input:

1
500000 500000
](([>{)<([(]>[>)]]>{]<)}}{<>]](])}<{(({{<>(}{>>)<]<]>)){[]>>[>]{]>})<[>{)))[}]<{<)}}>[(}])()}[>()({>)[]<)[[)[}<)]}{(][((){)}{]]<{(](>)>]{){]{}<(](]<{((<[<]]([><[}]][<][{<<>[]<)()]>){(<(>{{((])})])))>]()>}{(<})(])[<)([}<>{{(<{]]({[{<(][}[]>]>}]<><)})[)}}<{}({][][){}]{>{{(](({})}[{]}]{...

output:

5475

result:

ok 1 number(s): "5475"

Test #25:

score: 0
Accepted
time: 91ms
memory: 67768kb

input:

1
500000 500000
>((>)(([(){}}[(({}]>>>(]{{<>[((}(><<><[}]>{}})><{<){>{>({}>}}<{{<]})([<])]}([><<><(]]><>){>}{]><(<{}<{)]{<<}]]<)({>}](<([)(>><[)<>]{){}<{>>{(}}<{(<)>(}{(}[]>><>)>[{>]([>}(}[}}}{]<>(<}))>][[<[(>{[([(})>][)(]}>)]<>}[<[>(}][{>[[([})])[]<{>[(<][[<)<{<{[<><<(]>)[[}{{<<](<>(]<(((<<]{>((])]...

output:

474

result:

ok 1 number(s): "474"

Test #26:

score: 0
Accepted
time: 93ms
memory: 67988kb

input:

1
500000 500000
{}][>>]]{}]}]]<(}](}]>][((][[[[[}}}<(<{)}]<(}]]([{({{]>(}({(}>)[<([>(>[<>}}[(}{>(({(})>{[[)}><{(>{{>)[{[((()])){}}{{<[]>(<[>]>]{)]]}[(]][}>><>[>]<)}>}]><}((<[><]{}[{(}]{}]][((()()})[(<{<)>[(<<}({}<[{)<>]}<][(>}<[]))][)>}<([}(<><(>>})]><[((<<]>>}]<>)<[)[[][[<>}[<<(][>}<>[[}{})>>(((<([...

output:

45

result:

ok 1 number(s): "45"

Test #27:

score: 0
Accepted
time: 86ms
memory: 68008kb

input:

1
500000 500000
{{)<]]>><>()))<>[<}<}{()())}({}<][<){[>(]){)[>>>)){>[}<}}(>}<]{[[[>[<{{>(<{({(}<(<>>(((>][)[]}(]){{)(({{}}({}]<]>}><<}>>(<(<))>]))<<[<)(]<)>(>{<>>[[{{[<<{]((>][)({[{>[[))<([><>>][}[<)]{}[(<>]<))<]>[>[>>>(}({>>)><)[{<[(}>}[()){{])>((}>}}>{>}>)>}(({((}}]{<([[)>[{<<}{)<)][})({{[>)>>>{)<...

output:

6

result:

ok 1 number(s): "6"

Test #28:

score: 0
Accepted
time: 168ms
memory: 68004kb

input:

1
500000 500000
{}[()]{}<>({}<[]>)[[{}]]<><><()>{{<<>>}{<>}}{}(<>)[]<[[]{}]><<{}>([[]<(<<><[[]]>{[{<<>(()){{{}[[{((){()((<>{(){<>}[{}()<()>[((()))]]}))})[[]]}<{}[((){}<>){[<[(<><><[<<[]>[]>]<[]>{<[<>]<()[]><{{}<<>[{{{{<>}<><<>{}>}}}{[]}]>}>>}<>>)]>]()}]{()<{}>}{}>[]()]]()[<>]{}}}{}()([]{})>}]<{}>{<>...

output:

142356

result:

ok 1 number(s): "142356"

Test #29:

score: 0
Accepted
time: 154ms
memory: 67816kb

input:

1
500000 500000
[{}]{}<>{}{}{}[][[{}[{(()[()])}]]()<()(<>{}[[()]])[<>][]>(<><{}[]>()[])]<[]<>>{[{}[][()]]}<>[{((){[{}[{<>}({[[]{}]([]<()<[]>{}><{[]}>{[][{}]})})()]<>]}<[]>)}(){}]<>()()(<>)()[(({}))<>]()()()<()[{}][][]>{}{}[{}]()()(){()[((<{}>())<()[[[]]{(()())(([][])(<>)<<>>)({})()}]>{}{()})]}(){[{<...

output:

38282

result:

ok 1 number(s): "38282"

Test #30:

score: 0
Accepted
time: 117ms
memory: 67832kb

input:

1
500000 500000
{}<>()()[]{}<>()[]{}((<[[(<>()<{{{[[{}]]}}}[<<[]>{(){<[<>]>}}>[]<{<({{{{}}}}[])>([]<<>>)<{}()(){}>{}<()>}>]<>>)]<<<>><>{}[([])]{{[({}[<([[[]{<()<><><{{}}[]({<><>}<><[()[()]][]>{}{})>[<[]>[]]>}([(<>())]){[]}<>[]]<{<<<>><[]<()>>[<[<[{([]{})<(())([(())]<>)[]<(){}>>}]>{}{}]>]<<>>>{}<>}()...

output:

4449

result:

ok 1 number(s): "4449"

Test #31:

score: 0
Accepted
time: 110ms
memory: 67652kb

input:

1
500000 500000
<>[]{<[[]]{{[]}}>}<[<>][]>[<{{}[[]]}>][][<>[{(<><>)}{}]]<<>(([]))><[()]<()>>[(<>[])]<>{()()[[][]]<{}>{[]}}[[{()<>(){{[]}[]}[<>]{[]()}()}[]]<>][]<>{}[]<>[{}]()<<[]<<{}>>{()}>><>{<({}[]<<>>)>([][(<{[[<><()><>[<><>([[<>([])]][{}<[([](())){}]()[]>{{}}])[]<>{{}}]]({{}}[]()()){{<>{[]}<>}}]...

output:

375

result:

ok 1 number(s): "375"

Test #32:

score: 0
Accepted
time: 97ms
memory: 67804kb

input:

1
500000 500000
[{}<>]{}{([{}])<{<{<{([[<([]<<><{[](()){[[[()][]]]}}[]{}>>{([][])}[{<>[]<[<>[]]>}])>{<(({})()){}{<><(<><[[{[<<>>]<>}[{<()<>[]>}]]<>{}()<{<>}[{}]{[{}][[()({{<<>>[(<>)]}})[]]]<>()}[[]<>][]>]>[][{}{}<>[<(){}[]>()]]<<({}[{<>[]{}<>{}}<{()}>]())>{}>){()}>(<>)}{[{}]{(<>)}[](()[()]<>)}>{[(<>...

output:

42

result:

ok 1 number(s): "42"

Test #33:

score: 0
Accepted
time: 164ms
memory: 67896kb

input:

1
500000 500000
(((()()(())(())()))()()())((()))()()(())(()((())()()))()()()(())(()()()(()))()(()())()()(())()()()(())()()()()(()(()()))(()())()(((()()))())()(((())(())())()(()))()()(())()((()()()()()(())(()((()))()((()(()))()))()))(()())()((()))()(()()(()(()())())((()((()((())()(()()))())(())())())...

output:

152712

result:

ok 1 number(s): "152712"

Test #34:

score: 0
Accepted
time: 131ms
memory: 67860kb

input:

1
500000 500000
(()())(((())((()())(((((())(((())))())((((()()(((())(()))()))(())))()(())()((())(((()()()()))(())))(((())()(((((((())(((())))(())((()()))(()()()))((()()(()())()))(()(()())()()((())))))()()))(((())(((()()(())))()(()())()((())()((((()()()(())(((()((())()()))))()((())(((()()(())(()((())...

output:

67010

result:

ok 1 number(s): "67010"

Test #35:

score: 0
Accepted
time: 114ms
memory: 67868kb

input:

1
500000 500000
(())(()(())((())(())))()(())()()()((()((()(()()((()))((((()))((())))(()()(((((()))(()(()))(()))(())))))))(())()(()())(((()((()()())())()()))((())()()(()(()(())()()))()()()()))()))(())()(())(((((()()())((()())())())()((()(())()((()))())(()(((((((()(())(()())((()()()()))()(((((()()))()...

output:

23151

result:

ok 1 number(s): "23151"

Test #36:

score: 0
Accepted
time: 98ms
memory: 67904kb

input:

1
500000 500000
()()((()))(())((((())(()()))((())()((())(()()))((((()((((())))())))(())())((())(())(()((((((())((())))(()())(((()))())((()(())()))))()(((((())(()())))())())(())()()((())))((()(()())()()(()(((()())())(((()()(()))()((())))())(()())()))()))))))())))(())(((((((())))((()()())())(())(((()(...

output:

7026

result:

ok 1 number(s): "7026"

Test #37:

score: 0
Accepted
time: 91ms
memory: 67756kb

input:

1
500000 500000
()()((()))(())()(())(((((()((((((())())))))))()(((()))))(((((())))(()(())((())())((()))))))())()(()()())(()(()(()(())())()(((()(())))()()()))(((())()()()()()))(()(((())(((()()())(()(())(()((()))(()))))()))))())()((()((())())))(((()((((()()()(((())()()((()()))))(()(())))(())(((()))))(...

output:

1762

result:

ok 1 number(s): "1762"

Test #38:

score: 0
Accepted
time: 565ms
memory: 87232kb

input:

1
500000 500000
{(([[{[((({[([({[({[<(([{[<[{(<{<<((<{{(<<[[{([{{<{{([{((({<<<[<<{{{<<([({[[{{({[{[{<[[<[<([{{[[[[{[[([{({([([{{{{<([<<{<{(<<[(({[([{[(<{[[[(([{[{{[[(({({{{{([{([[([<{[{[([{(<<<{(<<[{[({{(((([[[(({({<[[[{<(((<{((<<<[[<[<(([(([[({{<[[{[<{({[[{{<{[{[[<{<{([<{{((<((<(<<[<(<{{<<[<<({<([{...

output:

1

result:

ok 1 number(s): "1"

Test #39:

score: 0
Accepted
time: 569ms
memory: 87456kb

input:

1
500000 500000
(<[<({([[{<[[<<<[([<({<(<{{{(<<[{{<({([<{(({[{{(([{(({<<[<<(([[{{{<{(<(<[<((<<<{{({<<({<{[<<(({[{<<{((((((<(([([<([<[<[[{({<<[{[[{{{({{{[{{[[(([([((<(<({[([{{{{({((([<{<[(<[((<(([{<[((({{<<[[([<[<{[({<[[{({{{<<{{((([{[{<([<({[{<({((<<{<<(({{(<<<(((({{((<[[{[{[[[(<[{[[[([(<{{[[[<<(<{<...

output:

1

result:

ok 1 number(s): "1"

Test #40:

score: 0
Accepted
time: 559ms
memory: 87304kb

input:

1
500000 500000
<{<{<<<{<<<(<[<<[<[((<[{[([<[{{(([[[{{({([<<<[<[{<[<<(({{{<[{<([[{({(([[[({((<<[<{{<{<<(<<[[<<{[<[<{<({{<{<<[(<([{({[({<[{<<(([{[<<<<{<[[{<({<<(<[[<(<{{<<{<[(<{<<{<{<[{<[(((((<[{<{([[{[<[{<<{([[{{{{<{[[[{{<[(<[[<([[[<((<[<[(<[<{{<[((({{([{({{<<(<{{{(<{<{(<{(<[{{<(<[<({[([[{{[(({[[<<(...

output:

0

result:

ok 1 number(s): "0"

Test #41:

score: 0
Accepted
time: 569ms
memory: 87204kb

input:

1
500000 500000
{{(({<{<[[<((<<([<({[(<[{[(({({(<(([[(<[<{{({((<({[[{[[[<{<[<[((({{{[([<{[[([({[(<<<[[<([[({[[<(((({{((<{({{{({{{({[[[<{(([<((<<((([[<[<(<((({{<[(<{{<[(({({[{({{([<[[<<<(([<((<[(([[[<[{<([{(<<[<([{{{[<[({<[(<<{<[({<[(<[<[[<([[<[(<{<[[{[[{([{((<[{<([<(({[([{<({(<<((({(({{<{[[[<{{<{{([...

output:

0

result:

ok 1 number(s): "0"

Test #42:

score: 0
Accepted
time: 543ms
memory: 87112kb

input:

1
500000 500000
[<{<{<((<[<[{{({(<[<[(([<{[{<{(<(<[[[({{<([({(<[<[<[(<({(<{<<[{<<<[<{[{<[<[[{{((<{[{[[{<<<(((([[({<(<({<(([[({{{[<{<<<{<{{(({<{<{({({(({[[([<{[<<<<{{<{{<[(({((<[{[<[{<[{{<(<[{(<{[[<<(([<{<{[<({{<[<((<[[<<((<<(([<[<<{[({[[[<<<{[<[([([([(<[{{<{{[([<{{({{(([[{{[([(([{{([<{{[{{[[(<({<(({...

output:

0

result:

ok 1 number(s): "0"

Test #43:

score: 0
Accepted
time: 278ms
memory: 68268kb

input:

1
500000 500000
[<<<<{<{<({<{<<{({{[(([[[(({}<([<{{[[({<>({<{[[<{{[[[(<{[()]<<{[{}{{}<<(((<[([[[(<{[(({[<<<([([[<[{{{[]<><((<<({{((<([(((({}{[(<<[{{{<[[[({[[[{(<>[<><<([<{<[(({<<({[({{([{[({<{{{(((((({[{[{(({(((<{}({(<[[<{[<>]}[<(<[{[[((((({}<([<<<[([{[(<{<<[<>{(<<(<[({<({(<><[[<<<((<{((<<<([{<{}{({...

output:

162821

result:

ok 1 number(s): "162821"

Test #44:

score: 0
Accepted
time: 449ms
memory: 81436kb

input:

1
500000 500000
{}{{[{({{[<>[[]([<{({{{([<{[{<([{[]<<<{(({[<[{<[[<[<(<><({({{{[]}{[]([()][{<[[({()[{{((((([][<({}<([((<[({<(<>(<<<<(({({[[{{<<[[<<(){<[<(([({}<[{{{<[<<<()<<{[{({<{([<(<[]{{}{[[{{[<[[[(<><><{}{(<>)(({{[{<[(((<<<([{({<(({}<(<{[(<({(([{[<[<<[[[[<<>()<<<((<[(({<<[<[[<<{[{{<{[[][[[[{{{}{<...

output:

16576

result:

ok 1 number(s): "16576"

Test #45:

score: 0
Accepted
time: 471ms
memory: 83720kb

input:

1
500000 500000
{([((([<>[{[((((<({{({[([{[]{<[{[([{[<<<{({([[][[(({[[<([{([{<{([{(<(<(<>{[[(({<({[]<[<>[<{<(<([<{(<[()<[{<<[((([[({[[<{(<{{[{{{{[((<<>[[<<{}((<({(({(([{({{{<[<><{<({[{{({[]{([<{<[{<<((<[[{{[({{[{(<{<[{({{[[<([{{[{({([<><((<{(([<<[(<<(<(<[[[<{[([<{}{({(<{{{{[[<<[[(){}<[({<><([()[[(<(...

output:

1262

result:

ok 1 number(s): "1262"

Test #46:

score: 0
Accepted
time: 477ms
memory: 83704kb

input:

1
500000 500000
{(([[{{}{<{()[]([<<<>{[(([]({}<[((<{[]<[[]<({[((<[[[{[{(({([{([<[({[<<<[<<{(()[<{[{(<[[[[][](<(<{<{()()[{}{}<<{}<(([[{[<[((<[[<{(({([{(<>{<[[{({[{}[[[{<[{{{(){<[[[<{}((((<(<([<(<((<[<<{[[{{{[[<{{[{}<>({{({[[<(<{{(<<{{{[()()[[()]<{<({[(([[[({[]<{[[{<[([()((([]([[[((<<[<(()[]{{<<<({{[(...

output:

340

result:

ok 1 number(s): "340"

Test #47:

score: 0
Accepted
time: 518ms
memory: 83856kb

input:

1
500000 500000
[[]<<<[(()(<()(<<(<[({{[{[{[(<{[[][<{([[({<<{<[[]{{<[{{}((<({<{}[{<()>{[<{((<[{<({[{{({{<{[([[(({}({{()[<{{[{}((({<<><{}[[(<[[{{({}<{<[[]{{[{{([({{<{{{[(([<>{{[[(([[(<[[[<{(<<[[({<<<>(({([{([<[({[<<<><[({<{[<{[{(<[[[[[{(<(<{<{(({}{{{}<<>(<(([[{[<[((){[({({({([[]<<{{[[<{[<{[[[{<><<{<(...

output:

100

result:

ok 1 number(s): "100"

Test #48:

score: 0
Accepted
time: 180ms
memory: 68052kb

input:

1
500000 500000
(((((((((())())((()((()()((((()((()(()((()((((((((((((((((((((((((((((((())(()(((((((((()((((((((((((((((((((((((())((((((((((((((((((((((((((((((((((((((((((((()((((((((((()((()((((((((((((()(((((())((((()((((((((((()(((()((((((()((()(()((((((((((((((((((((((((((((((()()((((()((((((...

output:

224975

result:

ok 1 number(s): "224975"

Test #49:

score: 0
Accepted
time: 202ms
memory: 67588kb

input:

1
500000 500000
((((((((((((()(((((((((((((((((((()()()((((()((((((((((((((((((()(((((((((((((((((((((((((((())(((((((()))(()()((((((((((((((()(((((((((((((((((((((((((()(((((()(((((((((()(()((((((((()(((((()((()((((((((((()((((((((((((((((((())((((()((((((((((((((((((((((((((((((()(((())(((((((((((...

output:

220198

result:

ok 1 number(s): "220198"

Test #50:

score: 0
Accepted
time: 230ms
memory: 67852kb

input:

1
500000 500000
((((((((()()(((((((((((((((((()(((((()((((((((((((((((((((((((((((((((((((()((((((((((((((((((((((((((()((((((((((((()())(((((((((((((((((()((((((((((((()(((((((((((((((((()(((()(((((((()((((((((()((((((((()(((((((((((((()((((((((((((((((((((((((((((((((()(((()((((((((()(((((((((((((...

output:

214328

result:

ok 1 number(s): "214328"

Test #51:

score: 0
Accepted
time: 265ms
memory: 67736kb

input:

1
500000 500000
(((((((((((((((((()(((((((((((((((((((((((((((((((()(((((((((((((((()((((((()(((((((((()(((((((((((((((((((((((()(((((((((((((((()((((()(((((((((((((((((((()((())(((((((()()((((((((()()(((((((((((()(()((()()((((((()()((((((((((((((()(((((((((((((()((((()()((((((((((((((((((((()((((((...

output:

198470

result:

ok 1 number(s): "198470"

Test #52:

score: 0
Accepted
time: 366ms
memory: 67588kb

input:

1
500000 500000
(((((((((((((((((((((((()((((((((((((((((((((((((((()(((((((()(((((((((((((((((((()((()((((((((((((()((((((())(()(((()((((((((((((((((((((((((((((()()((((()((((()((((((()((((())((((((((((()((((()((((()(((((((((((()(((((((((((()(((((((((())((((((((((((((((((((((((((((()(((((((()((((((...

output:

144248

result:

ok 1 number(s): "144248"

Test #53:

score: 0
Accepted
time: 121ms
memory: 67836kb

input:

1
500000 500000
()[](){}{{}[[]][]}[<>{{[[<>([{}]){<>}<[]><()>()]]}({}([](){}{{()}}))}][]<>{{<[]>}}<[[]]{}>[]{}<>([]){<>}{(())[]}()[<>]()<>()<<>>()({}){}{[][{<{(<>[[[(([()]{<{<>}><>}(<>))<{(<<>>{})}>{()}[])]{}]<<<{({}){{}}}[]>>{}{}>][]())()<()>}<>>}(){(<>){([](())<><((){}<{{}}>({(<>{<<[{}[][]]>[]<[]{...

output:

108

result:

ok 1 number(s): "108"

Test #54:

score: 0
Accepted
time: 123ms
memory: 67848kb

input:

1
500000 500000
<[(<>)]()({{}{(){[<[[]]>]}{{}{}()<>}<>}}(<[{<>{}{[]}{}{{{{[<[][]>]<>}({[]{{}}[<[[[]({})({}){}[{}]()]]<{}<{[][]<>}>>{[{}](){}}>]}({})[[{<>}[]()]](<<>[]>))}}}()}((([]([]))<{{}({})}[][]{}>[]{<>})<><>[])]>[]){}({}))>{[]}<>[][]{{}(())}<<><{{}[]{}}<><()<()>>>()>[<><{}>]<>[(){}]<>{}<{}>{{}}...

output:

40

result:

ok 1 number(s): "40"

Test #55:

score: 0
Accepted
time: 123ms
memory: 68004kb

input:

1
500000 500000
{()}<><<><{[]}<>>[](([[{<>}{}][[]]]{}{})[(<<>>)][])<[][]><[[]{}][[{}]]>>{{}}[<>][]{[]}(){{}}<>{}[(<>)]<{()}<{[[{{[]<>}[<>]}{<<>>}]{}{{[](<>{}{}[{}])}{}{}[[]][{{}[]}][([([]())<>])()<>]{}}[]]([]<{{}}{{}}>[]{})([])}>><{}<>(((){}[]))([])>()([]{()[<{}>]}<>)<()>(([]))(<<(()){}>({}{}<([<>])...

output:

53

result:

ok 1 number(s): "53"

Test #56:

score: 0
Accepted
time: 120ms
memory: 67792kb

input:

1
500000 500000
{}(<[][]><[]<>>[]){[(()[[{}]()[]]<>((())))](()((){()([{<>}][]{()}())[{}()]<{[]}><>[[<[][<>()[{}]]>[()]{}]{[()]}]}<><>(){(({()<>[<(([]{}[]){<[{[]{{<<{[{<><(){[]{<>}[[]]<{[]<<()>><>{[<{<>}[<{}<>><[]>]()>{}]<>{}[[]][]}}>}>}]{}{()}<{}<()()>(<>)<>()()>[]}<>{[<>]<<><[<>()<[][]{}()>]><{<[]>...

output:

28

result:

ok 1 number(s): "28"

Test #57:

score: 0
Accepted
time: 123ms
memory: 67608kb

input:

1
500000 500000
[]<{<[[]{[]<>([]){}}<<{()(<>)}>>]>}<[]>>{<>}(([]())<{}([]){}>((<>)[]){})<[()]({{[]}<{[{[<{}>]}]}{()}{{}}>}<>[[]({})()])>{}()[<>]<(<[]>{([])}()[])>[{([])()}]<[{}]{[](<[[<>{<()><<<>{}{}>>}]](){}>)<>}{}{()<()>[][{}][{[]<()[]{}>}()](){[[]]<<>[]({})()>(<>)}}[[<[<{}<>><<([[[({{}{{}}[(<>[[(...

output:

27

result:

ok 1 number(s): "27"

Test #58:

score: 0
Accepted
time: 126ms
memory: 67776kb

input:

1
500000 500000
{{}}()<>()[][[]]{(({}[[[[]][{(<>)[<>((((<<{{}(<>)[]({[()]}()<>)[]}><>[][]{}[[(<([])>())](({}{})<([])>[[]]{<<{(()()())<[](<>)[]>}>>}<><[(<>[])({({<{}{{(<{[]({})}[]>)}}()[]>(()<><[<(()()[()])>](()<><([]<>)<>{()}{{}}()>()){{{([(){[]}{}<()[{[]}{}]<>{}>{}]){}}}}[<><>]><{<>([{{<>{}}<<>>[]}...

output:

146

result:

ok 1 number(s): "146"

Test #59:

score: 0
Accepted
time: 120ms
memory: 67632kb

input:

1
500000 500000
[[]{{}([])[]}<>()][]{(){}[]<>}{<>{}}{<>([])[[][[[{{{}{<<>{}<[]<>()>>}<>}([]()[{()()(<>)<{}>}[]])}]<<<>>[{}()<([])()>{}]>][]]([[[]<>[()([]()<<<>[]>>())]([])]])](()[][])[]}<{}>()<[<>]{}<>><><({()}{<><({{[<><>]<{(<>())}>}<[<>{()}(){}][]{(<>)}()[([<<[{}][]{}>>])(<><><>{<>})]>}[[]{}])[[][...

output:

133

result:

ok 1 number(s): "133"

Test #60:

score: 0
Accepted
time: 119ms
memory: 67836kb

input:

1
500000 500000
<[][]><><>({}([()]{[[][(){<{}[]><[((<>)[({}{{}})])[<<<>{<><>}>((<<>>)(<>{()(<>)()(){{}}<>(<<<<()>>()>>)<>})){}{}<[{}]>>{}[]]]{[([](<{}{[][]()}<{{[([]{<()>[<>[]{}][]})<{()}>]}{[][[[][[](()[][])<<>{{}}[]([[<>]])[()]>][]]][]}[]()(<>)<>}>{<<{<<>><>([]){{}[{}]}(<<<<>>>([<>[{{(<>{}[]{}<>{}...

output:

38

result:

ok 1 number(s): "38"

Test #61:

score: 0
Accepted
time: 119ms
memory: 67832kb

input:

1
500000 500000
{}((<{([()]<>)({{<([{<[[<[]{({})}>{{}<>}()]<({}){<<><>[]>[{({[][][](<>)})<>[{{}{[](())}<{()(([][[{[[()]]([{{}(<>[][{<<>>}])[]}]()(<>))}][<({{}[]}[[[]]<>])()({})[[[]<>({[]{<{<>}(<>)>{{([(<{}<>>)<[<()[[<[]>]((<>))([[]](){{()<><>}{([{}(<{}>)])[{<[]>[]}]}}{}){}[]]>]><([[]])>[](())[()]]()...

output:

45

result:

ok 1 number(s): "45"

Test #62:

score: 0
Accepted
time: 119ms
memory: 67784kb

input:

1
500000 500000
[[(){[{[]}]}<>([](())(<<(<()[{}()]>[(<([[]()])>)<<<>{}{([])}>><<>()<>{}>][])>>){})[<><[]<>[(<><{}>[<>[]])[[()]]]({})>]]()]{}({}){}<[][()]>(<{()}>)(<>)<()><(<<<><><>>()>)>()<>()<{}>[]{}()[]({}){{<>{}[]}{[]}}[<>][]({}{})<>[[]<>()]<[<>{[]({{}<[[]()]{}>})({}<>(<>[()]{}(<>))())<(){(){{{}[...

output:

128

result:

ok 1 number(s): "128"

Test #63:

score: 0
Accepted
time: 67ms
memory: 67988kb

input:

1
500000 500000
<><><>{}(){}[[[]]][[[[{}]]{}<{[](([]{<>{}}))}>]<[({<><>[]}[])[(())]](){[]()<>[]{({{}})}}()[()<>{{}{([()])}}]>]({{[((<(<>)>[(<[]>)[]]){}{}()<<>()><([]<[[]{<{}>}]{}[]>([[]()]){}<[<{<({(()({}<{}>{[]([[]]{}([()({}[(){}{}[[]]<>[](<[[]][](([]<>{[[]]}())(<>)(<{}()>[]))[[{[()]{}}[<>()[][{[{}...

output:

32

result:

ok 1 number(s): "32"

Test #64:

score: 0
Accepted
time: 72ms
memory: 68120kb

input:

1
500000 500000
{{<<{}[]{([<>][]{}()(){})()}>()>}}(){(<>[])}(){}[{(()[]{})()(<>[]<<>>)<>}]{[<{{}[]}>{[[<<<[[(<>[]){}]][[[[[]{}<<<>{<><>[]}([({})]{{()}})>><>]]<<>>]]>{{<>(){}[()]<>[]}}>{<><<>><<>>}>]]<>[](<>[()][])}]}{}{()<>}{[][][]{{{}{}}[(([]))[()[[](((){}[{()}][[][([])(()())([{(()[([][]())<>])}{<<...

output:

15

result:

ok 1 number(s): "15"

Test #65:

score: 0
Accepted
time: 68ms
memory: 67796kb

input:

1
500000 500000
[{}]<>{<{<><<>>}>}{{<({})>}}{()}(((<>)))<>{}()[]()(<{()}>)(({{{{{}{}{{}(){}()}[]<{}>{<>}}}[{}]{<>()}}}(<<(({{}}))>>))){{([<>({{{}}}[]{}[])[[[{{}()<{[]<><()<>>[]}>}(<{<{{}(<>){{()}<>{}}()}>}[[][{{()}}[]]<>{}<>]>)][[<>]]]]{[](<>)<[[[[[<[]>]]]]]<[(()[])]>><>}])(<><[]{}>({}({}[({{}[{()()...

output:

9

result:

ok 1 number(s): "9"

Test #66:

score: 0
Accepted
time: 64ms
memory: 67620kb

input:

1
500000 500000
()[{[<>]<{<>}[[<[](){}>]<>([])]>{(<{}{<{[]}[]>}>)}}()]<<>><>{}()<<(([<><{[]}>{}{{}{}<>([][]({}){}<>())(<><<>>)<(()){()}>}]{}<>{}<>))[[]]{[](<{}((){[]})>())}>>[][]()<[](<({(()[{}<>][<<>>])({})})>{{<>}{}{}})><><>{{}[]<{}>{}()[{<>}]}[][]<[[][()]]{}>()<[<>[<>[<>]]]>[]()(){}[]<<>>{[[[]{}<...

output:

6

result:

ok 1 number(s): "6"

Test #67:

score: 0
Accepted
time: 71ms
memory: 67832kb

input:

1
500000 500000
<>([<><>][<<>()><<()>>])(())<[]><>(<>){}(())[]()<{[]}>[({})[(<<((<>[])<[]>)([[]])>()((<>{[]()()<()>})()()<<>><(()<>)><{<{<>{}}[]>}{}[]>())<>>{<>[(())(())]<>()}{<>})]][()[]{{{}()<>}}{<>}]{}{<>({}<[()]>)[]}[{}]{{<>}}{[[{{}}()]{()()[{<[]>}{{{}[<>]}}<{}><<>>()()[(<><>[])]]()[]}][({}<{}>)...

output:

4

result:

ok 1 number(s): "4"

Test #68:

score: 0
Accepted
time: 67ms
memory: 67928kb

input:

1
500000 500000
(<>()){}[]()<[[]]<<[]>>>[]{<>}({(){()[<{(<[([[]<>])]<>>[[[]{{{}}}]])}<[]>>]{[()<>]([{[(<<>>)]{}}{[]({})}{()}])}}})(<>)<>{[[]][]{}}<<<>{}>>(<>{})(<<(){}<><>>>)<>[]{}{}(()){{}[][[][()]<>]()}[{}(<>)][[][]]{}<()()[{()}][()](())<>>{<>}<()><><>([]{})<>[]<>[[(())<[]<({})>>][[]<()[]{}<>><{}>...

output:

7

result:

ok 1 number(s): "7"

Test #69:

score: 0
Accepted
time: 59ms
memory: 67768kb

input:

1
500000 500000
(<>){}(){}<<>([])>[]<<[]<<>>>>(){<([]())({<<>(){}<{}[()([{}]({}<>([][]){()})<{}{}[]>)]>[]>}{})>[[{}[<>[]][{}][]]]}{<>}{}<[]>{{}({})}{{<><>[[<>]](<[]>)()}}()<{()(){{}({})}}>()(()<>[])[]{}()<>{[]([[[{()(((([()]<([()]){([][]<({}[{}])><[<>{[()]}<<>>[<>]{}]>()){}{<>}}>))))}()<>]<>][()(){[...

output:

5

result:

ok 1 number(s): "5"

Test #70:

score: 0
Accepted
time: 66ms
memory: 67848kb

input:

1
500000 500000
[{<<>{()}{}>}](){}<[]>[{[<>]({<>}){}<>}]<({<>}{})>[<()>(<>{[<<[]([{}][[[]()()]])>>{}()]}[])()({}[{}]<><()><(<>[{}<>()]){}>{}(<<>>[[]<>{()}{}]{[]}))<<[<[()[]][[{<<<{(()(())<{[]<<{({(<{{[]{{}({})}<{{()[]()}}>[]()}}{}>)}<[({{}})][]{}{}>{})<{[{}(<([[]{}])><{}>)<>]}>[{()}]}>><>{<(){}>()[<...

output:

2

result:

ok 1 number(s): "2"

Test #71:

score: 0
Accepted
time: 63ms
memory: 67992kb

input:

1
500000 500000
()[<(<[[]]><>{<()[][]>[]}<(({}[])[[[]]][(<>{})])[[]]<>{[]}>)>][][][][(((<[]>)))][()]<>[[()]{{[<>][[[]](<{[]}{}{}><[]>){[(<{}(()<[{}]()<><<>><<>{[]<([])>}>{<[{}]><>}[(([[({}[][]{}{[<>]((({{}})))<>})[]]][<<()><>(())>]({}{})))<(<>())[{}]()[[]{{{<<(())({}()())<{{<<{{}[()]((((({})[](<()()...

output:

1

result:

ok 1 number(s): "1"

Test #72:

score: 0
Accepted
time: 56ms
memory: 67796kb

input:

1
500000 500000
<>{<{{<{}{}()<{([]{<>})}>[(<><>)]>(){}[][]}}<>>{}<>}<[{{<>}}{<[<><>[[]]]{[<{}[[<>{}][([])]<>]>][[]]}>}(()){}]><[]>[(<(<><>)>[[]])[]()]{}({}[[[]({[<>]}{{}<>})<<>>]])<>([](({<>({})}))([[]][]))[[{[<{}>]<()[[][][]]()<<><>>>[]<>}]()]<()()[]>[]<>[{({}{})<>}]<{}({})>{}<[]{}[<><>()[]][]>(())...

output:

3

result:

ok 1 number(s): "3"

Test #73:

score: 0
Accepted
time: 124ms
memory: 67812kb

input:

1
500000 500000
[][]{{[]}[{{()}(<{({<><>}[])[]{[<>]}}[[<{(<<{[]}{[]()}>{{[(<>)<[]>]{}[{}({{{}}}<(()[]<{}>){<<[]>[{({}){}}<()()>{}<>[]]>}([{()<[<>]>[]}]){}{}>())(<>)]}}{<<>>([]{{({}<{}>)[]}}<{}<>()[<()()>{}<[][{<[]{}{[]()()<<{[()<<<>{{[[(<()<{[<{}[]<{<{()}[]<<([[]][]()<>)>{<>{}}><>[()]{{}}>}>>[]<>]{[...

output:

42

result:

ok 1 number(s): "42"

Test #74:

score: 0
Accepted
time: 114ms
memory: 67988kb

input:

1
500000 500000
<(<({{}()}[]{})>()()<<[]><>(<>){{}}()()>())><<{{{}}}{}>><><[[[]][{{<>[]}{}[{[]}]<[][{[]<>({}[<(<>[])>{{{()}<[]>[]{}}([()[<(<()({}(([])[{<<[]{[]}>{{<>[(){([]{()})}][<>]}}>()}]{}))()>[[][]])>[][]{()}]{}[](){()}[[]](){}[[([])]<{}>]]<()>[]<>){}}])({<[[]<(){}<{}[][]>{}>[([<>]<<>{<><()<<{(...

output:

157

result:

ok 1 number(s): "157"

Test #75:

score: 0
Accepted
time: 112ms
memory: 68004kb

input:

1
500000 500000
()()<>{}<>{}<>(){(<>)<>()}<{()((<{}([<((){}{<>(<><><()(())()[]><>)}<>()[(){}{}]()){}({})><<[]>>][]<><{<(<({})[]>)>[(<>){<>{(())[([<(){}()>[]]{}<[((){[()]()}{{[]}})]()()>([{<[{()}]{[]}()><>{}}][]{({{<[]>[[]<>[{[]<>}{}][]]{{}[]}<[[]([])]><>}{[][<>][{{<()>}}<>](()())<>}[{}]}{([]())})({[...

output:

164

result:

ok 1 number(s): "164"

Test #76:

score: 0
Accepted
time: 127ms
memory: 68004kb

input:

1
500000 500000
([]<>){}<[]>{}[[([]{})({[]()}<>)<[][]{{[<><([]<><[]{}>[{{({})}}])[[()[]]]([{[([])<>{}]}(<<>([]<>)>[]((())[()<[<>[]]<(<>{})<>[()<>]>>](())[()]({({})[[][][]][[[]]<>[[<>{}<>[]<>]]][]()([{}()[]]){<>{{}{}({})<>}}[](){{()}}{[]}}(<>){}{{}}((){}<<>()>)<>))<>)]<>)>[[<>][]([])()([<<>[<>]>]){}[...

output:

46

result:

ok 1 number(s): "46"

Test #77:

score: 0
Accepted
time: 111ms
memory: 67648kb

input:

1
500000 500000
{<((<(<>{}[][[]]<>({(())}{}<><<>>){}<<<>>>){{([<>][])}}{{(())()([])}<<>><[[({})<>]]>}<<>[]{}[()]{}{<{[]}([])>}{<>}<{}<({[<<>({})(<<>>()<>)>]{}}{}{}[{{}()<{}>}()[]{(<>)[]}])>>([<>[][]]())()[[]](<>)((<>)())<>>{(<>)()}>{{({(<>)}){<{<>([(())]({[]})<>)}((<>))>{}}{[(){}[]{<>[][]}]()}<[[<>]...

output:

160

result:

ok 1 number(s): "160"

Test #78:

score: 0
Accepted
time: 69ms
memory: 68320kb

input:

1
500000 500000
<>{<{{}<()[]()[][]><>}>}{[]}(){[]}()([()({})])([]<{}{}>)<>()(){[]()<>()<>}<<>>{}({(<><(<>)>)<{}[]>})((){[]()}){}<{{[()]}<[(<>)]>}([{{}<<{(<{()<>}><<>[](<()<><[][(){}<>]<()><[]()[<([()])<>>()[]<<>>{}<>[]<<><()>><()<>[(<([])(()[])>)]>]>()<{}><{(){}([]<()>)[]}<[]()<>>[]([]{<{}>}[])>>>)(...

output:

3

result:

ok 1 number(s): "3"

Test #79:

score: 0
Accepted
time: 64ms
memory: 67980kb

input:

1
500000 500000
{()}<<<[<>[]<>]{([<{}>])}>>>{<>}[](<>{(<()>)[([{{}}<>]()[[][<>]]){}<>][{}{}()[{}[<>]][(){(<>{})}][]]}[<>{[[<>]{[]<[({[]})]<><{<()<{}>>}[]>>}]}][])<>()()()[]{()()}[](){[]()[{(){}}]<(()(){{}})>}(([([]<><(()()<[]>{<{{}}>}()<<()>>)>)]<<<>><<({()})(<{}<>>[]<<>><{{(<>)}}>){}>>>()<<>[{<>([<...

output:

6

result:

ok 1 number(s): "6"

Test #80:

score: 0
Accepted
time: 72ms
memory: 67760kb

input:

1
500000 500000
<>(())()[<>{{}}<>(())[(([])<<>>()[]){(<>)<[]([])>}]{()<{}>[]()<[<>]>}{}]()({}[](())<[<>](){[[<>]][[[]<><({{}(){<()>}[()(<[()<([[(([]([][]<>)){})([]<<>[][{}]{}>(<><>))][()[{(<{}>)<>}]]{<[]>}{{}[]}<><{(([])[[(<>())<>(<[[]<>{{()[[](<[][<([[<>()([({<{}>([{<()><>}<><>{}<<(<{}(({{{}<>}{}}<...

output:

5

result:

ok 1 number(s): "5"

Test #81:

score: 0
Accepted
time: 63ms
memory: 67852kb

input:

1
500000 500000
<{()}><[][[]]>[]{}([]){}{}(){()(){()<>()(([[]{{[]{[]{}()}}}{<[{}][<[[]{[]<[]>}]{{{}<[<>[]]()><{}[{}[[]](<>[({})<<>>{{}()<>}])[][()[]{([[]])}]{}][<[]>]>{}<({}[(<[][<<()><>{<>{([]){[]{({[]}[]<((())){}>[{}])<>[<>[<[]()({}<>)(<>()((){}))()[]>{}]]}}}}[][]>]>)])>}}>]<>>[<[]><>[<>]<{<>}[[<[...

output:

6

result:

ok 1 number(s): "6"

Test #82:

score: 0
Accepted
time: 73ms
memory: 67812kb

input:

1
500000 500000
{[]}[]<>[]{[{[]}[<>(){}[<[[]({(<(({<><>{}}(((([][(){()}])())())){}))>)}[])]>{}<>[<>{}]]]]}[]((){}){[<>(<{}(<([<>(({<[[[]{}]]>}))][][])>)[(<>{(<>{})<[<>]>}[[()<([]())>()]()])<<>[<[[][]]>[]]>]>()(((<><(()){}<<>>[]>)<>{{<><>}}{<()[]()>([((()[{{}[()]}<>]))()<[{}]<{{}}>{}([[]()()])>][]<<>...

output:

4

result:

ok 1 number(s): "4"

Test #83:

score: 0
Accepted
time: 127ms
memory: 67848kb

input:

1
500000 500000
<[()[]()[{}]{}]>()[{}{[[(){{}}]]<><>[]}]{<>{{}{<({<([])>}{(){{[]}}{<>(())}})>}}<()>{}}<>{<()>}<>{{()<>}{{()[][({<[<{{}<>{()<(<<>{{<{}>}}>{{{}}}<>)>{[]<>}{}}}>{}{<>[](<[]>())}]<>>[()()]})]}<{({})(<><>)}>}{(([]{}))}{}()}()()(<<>[]>{{}})([(([<[]<[]>{}<>[]><>]))[]])[]<>{}<>(<<<<<{}<>[]>>...

output:

120

result:

ok 1 number(s): "120"

Test #84:

score: 0
Accepted
time: 56ms
memory: 67776kb

input:

1
500000 500000
(){[]}<>[<<>()>][[()]{<<>[{[[][<<>>](<([[]{{}}((()<<({{}({}{{[]({}([])<(){}[{}]<{{{}}}>>)}})}<<>>)[()<{{}()[]}(<[<{[][][<[[<>]<>]>[<>]([<[]>[{}<>][(()[[]<(((([])[][[]()])))(<>)>])]])[]]}>]>{})>({}[()])()]<>{}>>{}<[]>()))(){}{<>()}])>[()]([]<<[]<()({()})>><>{}{}()(<>{{}})>[]{{}}{<<>>[...

output:

3

result:

ok 1 number(s): "3"

Extra Test:

score: 0
Extra Test Passed