QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#109497#6504. Flower's Land 2heno239AC ✓3472ms112268kbC++1711.0kb2023-05-29 13:00:132023-05-29 13:00:15

Judging History

你现在查看的是测评时间为 2023-05-29 13:00:15 的历史记录

  • [2024-11-22 20:27:17]
  • 自动重测本题所有获得100分的提交记录
  • 测评结果:AC
  • 用时:1477ms
  • 内存:112348kb
  • [2024-11-22 20:26:09]
  • hack成功,自动添加数据
  • (/hack/1243)
  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-05-29 13:00:15]
  • 评测
  • 测评结果:100
  • 用时:3472ms
  • 内存:112268kb
  • [2023-05-29 13:00:13]
  • 提交

answer

#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#include<iostream>
#include<string>
#include<cstdio>
#include<vector>
#include<cmath>
#include<algorithm>
#include<functional>
#include<iomanip>
#include<queue>
#include<ciso646>
#include<random>
#include<map>
#include<set>
#include<bitset>
#include<stack>
#include<unordered_map>
#include<unordered_set>
#include<utility>
#include<cassert>
#include<complex>
#include<numeric>
#include<array>
#include<chrono>
using namespace std;

//#define int long long
typedef long long ll;

typedef unsigned long long ul;
typedef unsigned int ui;
//ll mod = 1;
constexpr ll mod = 998244353;
//constexpr ll mod = 1000000007;
const int mod17 = 1000000007;
const ll INF = mod * mod;
typedef pair<int, int>P;

#define rep(i,n) for(int i=0;i<n;i++)
#define per(i,n) for(int i=n-1;i>=0;i--)
#define Rep(i,sta,n) for(int i=sta;i<n;i++)
#define rep1(i,n) for(int i=1;i<=n;i++)
#define per1(i,n) for(int i=n;i>=1;i--)
#define Rep1(i,sta,n) for(int i=sta;i<=n;i++)
#define all(v) (v).begin(),(v).end()
typedef pair<ll, ll> LP;

using ld = long double;
typedef pair<ld, ld> LDP;
const ld eps = 1e-10;
const ld pi = acosl(-1.0);

template<typename T>
void chmin(T& a, T b) {
    a = min(a, b);
}
template<typename T>
void chmax(T& a, T b) {
    a = max(a, b);
}
template<typename T>
vector<T> vmerge(vector<T>& a, vector<T>& b) {
    vector<T> res;
    int ida = 0, idb = 0;
    while (ida < a.size() || idb < b.size()) {
        if (idb == b.size()) {
            res.push_back(a[ida]); ida++;
        }
        else if (ida == a.size()) {
            res.push_back(b[idb]); idb++;
        }
        else {
            if (a[ida] < b[idb]) {
                res.push_back(a[ida]); ida++;
            }
            else {
                res.push_back(b[idb]); idb++;
            }
        }
    }
    return res;
}
template<typename T>
void cinarray(vector<T>& v) {
    rep(i, v.size())cin >> v[i];
}
template<typename T>
void coutarray(vector<T>& v) {
    rep(i, v.size()) {
        if (i > 0)cout << " "; cout << v[i];
    }
    cout << "\n";
}
ll mod_pow(ll x, ll n, ll m = mod) {
    if (n < 0) {
        ll res = mod_pow(x, -n, m);
        return mod_pow(res, m - 2, m);
    }
    if (abs(x) >= m)x %= m;
    if (x < 0)x += m;
    //if (x == 0)return 0;
    ll res = 1;
    while (n) {
        if (n & 1)res = res * x % m;
        x = x * x % m; n >>= 1;
    }
    return res;
}
//mod should be <2^31
struct modint {
    int n;
    modint() :n(0) { ; }
    modint(ll m) {
        if (m < 0 || mod <= m) {
            m %= mod; if (m < 0)m += mod;
        }
        n = m;
    }
    operator int() { return n; }
};
bool operator==(modint a, modint b) { return a.n == b.n; }
bool operator<(modint a, modint b) { return a.n < b.n; }
modint operator+=(modint& a, modint b) { a.n += b.n; if (a.n >= mod)a.n -= (int)mod; return a; }
modint operator-=(modint& a, modint b) { a.n -= b.n; if (a.n < 0)a.n += (int)mod; return a; }
modint operator*=(modint& a, modint b) { a.n = ((ll)a.n * b.n) % mod; return a; }
modint operator+(modint a, modint b) { return a += b; }
modint operator-(modint a, modint b) { return a -= b; }
modint operator*(modint a, modint b) { return a *= b; }
modint operator^(modint a, ll n) {
    if (n == 0)return modint(1);
    modint res = (a * a) ^ (n / 2);
    if (n % 2)res = res * a;
    return res;
}

ll inv(ll a, ll p) {
    return (a == 1 ? 1 : (1 - p * inv(p % a, a)) / a + p);
}
modint operator/(modint a, modint b) { return a * modint(inv(b, mod)); }
modint operator/=(modint& a, modint b) { a = a / b; return a; }
const int max_n = 1 << 20;
modint fact[max_n], factinv[max_n];
void init_f() {
    fact[0] = modint(1);
    for (int i = 0; i < max_n - 1; i++) {
        fact[i + 1] = fact[i] * modint(i + 1);
    }
    factinv[max_n - 1] = modint(1) / fact[max_n - 1];
    for (int i = max_n - 2; i >= 0; i--) {
        factinv[i] = factinv[i + 1] * modint(i + 1);
    }
}
modint comb(int a, int b) {
    if (a < 0 || b < 0 || a < b)return 0;
    return fact[a] * factinv[b] * factinv[a - b];
}
modint combP(int a, int b) {
    if (a < 0 || b < 0 || a < b)return 0;
    return fact[a] * factinv[a - b];
}

ll gcd(ll a, ll b) {
    a = abs(a); b = abs(b);
    if (a < b)swap(a, b);
    while (b) {
        ll r = a % b; a = b; b = r;
    }
    return a;
}
template<typename T>
void addv(vector<T>& v, int loc, T val) {
    if (loc >= v.size())v.resize(loc + 1, 0);
    v[loc] += val;
}
/*const int mn = 2000005;
bool isp[mn];
vector<int> ps;
void init() {
    fill(isp + 2, isp + mn, true);
    for (int i = 2; i < mn; i++) {
        if (!isp[i])continue;
        ps.push_back(i);
        for (int j = 2 * i; j < mn; j += i) {
            isp[j] = false;
        }
    }
}*/

//[,val)
template<typename T>
auto prev_itr(set<T>& st, T val) {
    auto res = st.lower_bound(val);
    if (res == st.begin())return st.end();
    res--; return res;
}

//[val,)
template<typename T>
auto next_itr(set<T>& st, T val) {
    auto res = st.lower_bound(val);
    return res;
}
using mP = pair<modint, modint>;
mP operator+(mP a, mP b) {
    return { a.first + b.first,a.second + b.second };
}
mP operator+=(mP& a, mP b) {
    a = a + b; return a;
}
mP operator-(mP a, mP b) {
    return { a.first - b.first,a.second - b.second };
}
mP operator-=(mP& a, mP b) {
    a = a - b; return a;
}
LP operator+(LP a, LP b) {
    return { a.first + b.first,a.second + b.second };
}
LP operator+=(LP& a, LP b) {
    a = a + b; return a;
}
LP operator-(LP a, LP b) {
    return { a.first - b.first,a.second - b.second };
}
LP operator-=(LP& a, LP b) {
    a = a - b; return a;
}

mt19937 mt(time(0));

const string drul = "DRUL";
string senw = "SENW";
//DRUL,or SENW
//int dx[4] = { 1,0,-1,0 };
//int dy[4] = { 0,1,0,-1 };

//-----------------------------------------


#define ftt function<T(T,T)>
#define ftu function<T(T,U,int,int)>
#define fuu function<U(U,U)>

template<typename T, typename U>
struct SegT {
private:
	int n;
	vector<T> node;
	vector<U> lazy;
	T et; U eu;
	ftt f;
	ftu g;
	fuu h;
public:
	SegT(vector<T> ori, T _et, U _eu, ftt _f, ftu _g, fuu _h) {
		int sz = ori.size();
		et = _et, eu = _eu; f = _f, g = _g, h = _h;
		n = 1;
		while (n < sz)n <<= 1;
		node.resize(2 * n - 1, et);
		lazy.resize(2 * n - 1, eu);
		rep(i, sz) {
			node[i + n - 1] = ori[i];
		}
		per(i, n - 1) {
			node[i] = f(node[2 * i + 1], node[2 * i + 2]);
		}
	}
	SegT(int sz, T _et, U _eu, ftt _f, ftu _g, fuu _h) {
		et = _et, eu = _eu; f = _f, g = _g, h = _h;
		n = 1;
		while (n < sz)n <<= 1;
		node.resize(2 * n - 1, et);
		lazy.resize(2 * n - 1, eu);
	}
	void eval(int k, int l, int r) {
		if (lazy[k] == eu)return;
		node[k] = g(node[k], lazy[k], l, r);
		if (r - l > 1) {
			lazy[2 * k + 1] = h(lazy[k], lazy[2 * k + 1]);
			lazy[2 * k + 2] = h(lazy[k], lazy[2 * k + 2]);
		}
		lazy[k] = eu;
	}
	void add(U x, int a, int b, int k = 0, int l = 0, int r = -1) {
		if (r < 0)r = n;
		eval(k, l, r);
		if (r <= a || b <= l)return;
		if (a <= l && r <= b) {
			lazy[k] = h(x, lazy[k]);
			eval(k, l, r);
		}
		else {
			add(x, a, b, k * 2 + 1, l, (l + r) / 2);
			add(x, a, b, k * 2 + 2, (l + r) / 2, r);
			node[k] = f(node[k * 2 + 1], node[k * 2 + 2]);
		}
	}
	T query(int a, int b, int k = 0, int l = 0, int r = -1) {
		if (r < 0)r = n;
		eval(k, l, r);
		if (r <= a || b <= l)return et;
		if (a <= l && r <= b)return node[k];
		else {
			T vl = query(a, b, k * 2 + 1, l, (l + r) / 2);
			T vr = query(a, b, k * 2 + 2, (l + r) / 2, r);
			return f(vl, vr);
		}
	}
	void update(int loc, T x) {
		int k = 0, l = 0, r = n;
		stack<P> st;
		while (k < n - 1) {
			eval(k, l, r);
			st.push({ l,r });
			if (loc < (l + r) / 2) {
				k = 2 * k + 1;
				r = (l + r) / 2;
			}
			else {
				k = 2 * k + 2;
				l = (l + r) / 2;
			}
		}
		eval(k, l, r);
		st.push({ l,r });
		node[k] = x;
		while (k > 0) {
			k = (k - 1) / 2;
			st.pop();
			l = st.top().first, r = st.top().second;
			eval(2 * k + 1, l, (l + r) / 2);
			eval(2 * k + 2, (l + r) / 2, r);
			node[k] = f(node[2 * k + 1], node[2 * k + 2]);
		}
	}
	//k以上でf(x,node[y+sz-1])をtrueにするような最小のy
	int searchloc(int le, T x, function<bool(T, T)> comp) {
		int k = 0, l = 0, r = n;
		while (k < n - 1) {
			eval(k, l, r);
			int m = (l + r) / 2;
			if (le < m) {
				k = 2 * k + 1; r = m;
			}
			else {
				k = 2 * k + 2; l = m;
			}
		}
		assert(k == le + n - 1);
		eval(k, l, r);
		if (comp(x, node[k]))return le;
		//x=f(x,node[k]);
		while (k > 0) {
			int mem = k;
			k = (k - 1) / 2;
			if (2 * k + 1 == mem) {
				r += r - l;
			}
			else {
				l -= r - l;
			}
			if (2 * k + 1 == mem) {
				eval(2 * k + 2, (l + r) / 2, r);
				if (comp(x, node[2 * k + 2])) {
					k = 2 * k + 2;
					l = (l + r) / 2;
					break;
				}
				//x=f(x,node[2*k+2]);
			}
		}
		if (k == 0)return n;
		while (k < n - 1) {
			eval(2 * k + 1, l, (l + r) / 2);
			eval(2 * k + 2, (l + r) / 2, r);
			if (comp(x, node[2 * k + 1])) {
				k = 2 * k + 1;
				r = (l + r) / 2;
			}
			else {
				k = 2 * k + 2;
				l = (l + r) / 2;
				//x=f(x,node[2*k+1]);
			}
		}
		return k - (n - 1);
	}
};



using mat = array<array<modint, 2>, 2>;
vector<mat> v(3);
mat e;
void init() {
    uniform_int_distribution<> ud(1, mod - 1);
    rep(i, 3) {
        modint a = ud(mt);
        modint b = ud(mt);
        modint c = ((modint)1 - a * a) / (modint)b;
        modint d = -a;
        v[i][0][0] = a; v[i][0][1] = b;
        v[i][1][0] = c; v[i][1][1] = d;
    }
    rep(i, 2)rep(j, 2) {
        if (i == j)e[i][j] = 1;
        else e[i][j] = 0;
    }
}


using Data = array<mat, 3>;

void solve() {
    auto merge = [&](mat a, mat b) {
        mat res; rep(i, 2)rep(j, 2)res[i][j] = 0;
        rep(i, 2)rep(k, 2)rep(j, 2) {
            res[i][j] += b[i][k] * a[k][j];
        }
        return res;
    };
	auto f = [&](Data a, Data b) {
		Data res;
		rep(i, 3) {
			res[i] = merge(a[i], b[i]);
		}
		return res;
	};
	auto g = [&](Data a, int x, int l, int r) {
		x %= 3;
		rep(_, x) {
			swap(a[0], a[1]);
			swap(a[1], a[2]);
		}
		return a;
	};
	auto h = [&](int a, int b) {
		return a + b;
	};
    int n, q; cin >> n >> q;
	string s; cin >> s;
	vector<Data> ori(n);
	rep(i, n)rep(j, 3) {
		int x = s[i] - '0' + j;
		ori[i][j] = v[x % 3];
	}
	Data ee; rep(i, 3)ee[i] = e;
	SegT<Data, int> st(ori, ee, 0, f, g, h);
	rep(i, q) {
		int typ; cin >> typ;
		int l, r; cin >> l >> r;
		l--;
		if (typ == 1) {
			st.add(1, l, r);
		}
		else {
			Data d = st.query(l, r);
			if (d[0] == e) {
				cout << "Yes\n";
			}
			else {
				cout << "No\n";
			}
		}
	}
}





signed main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    //cout << fixed << setprecision(15);
    //init_f();
    init();
    //while(true)
    //expr();
    //int t; cin >> t; rep(i, t)
        solve();
    return 0;
}

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

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 3ms
memory: 11776kb

input:

8 9
01211012
2 4 5
2 3 6
1 6 8
1 6 8
2 3 6
2 1 8
1 1 1
1 7 7
2 1 8

output:

Yes
No
Yes
No
Yes

result:

ok 5 token(s): yes count is 3, no count is 2

Test #2:

score: 0
Accepted
time: 754ms
memory: 11756kb

input:

100 500000
0011010001000000000110011111000010100111000010101100101001111000001101001000100111101000110000011011
1 6 55
1 7 84
2 62 79
2 59 62
1 59 66
2 10 13
1 25 67
2 33 88
1 7 11
2 72 81
2 71 90
1 15 38
2 3 100
2 59 76
1 13 83
2 11 46
2 25 52
1 25 55
1 35 42
1 19 87
1 26 86
2 83 94
1 27 74
2 42 47...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
N...

result:

ok 248102 token(s): yes count is 9322, no count is 238780

Test #3:

score: 0
Accepted
time: 749ms
memory: 11824kb

input:

100 500000
0210102000201220021100220012101022120002221021222001012101121221021110012101010200020222021101002100
2 8 69
2 37 98
2 13 22
2 20 25
2 16 89
1 47 61
1 1 70
2 19 68
1 31 91
2 6 39
2 16 51
2 44 57
2 24 27
1 25 64
1 20 59
1 18 98
2 45 66
1 2 75
2 16 89
2 85 96
1 12 45
1 9 22
1 66 87
2 13 30
2...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
N...

result:

ok 250664 token(s): yes count is 9342, no count is 241322

Test #4:

score: 0
Accepted
time: 1273ms
memory: 11848kb

input:

1000 500000
010001011011010100000011110001101101101011110010111010011110010101100010110001110100010111010101100100111100111111100011001000000101100100101111110111011011110000101010111001111100110001100000011011100011111111010100101010110110100011110000101001100010110111010110001000100110110100000111...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 250675 token(s): yes count is 988, no count is 249687

Test #5:

score: 0
Accepted
time: 1286ms
memory: 11940kb

input:

1000 500000
202011221110002000201111000002220121011012110120222101212012120002101120222210012210112202011121222201200211211122210122120201021222202222201102112101010210202120110111010212122020200221112122022202121200200110010012100002111210210002200210011210011222212012011010201121102121022200200110...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 248104 token(s): yes count is 1037, no count is 247067

Test #6:

score: 0
Accepted
time: 3472ms
memory: 112084kb

input:

500000 500000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

Yes
No
Yes
Yes
No
Yes
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
N...

result:

ok 248044 token(s): yes count is 37, no count is 248007

Test #7:

score: 0
Accepted
time: 3430ms
memory: 112244kb

input:

500000 500000
0001111011000101100010000100000001110010100101010011010010101010011001000101011110111000111100100001000000101101011001101001011010110111101100110111111110010011111111111100110000001100100001100010011000000001011011110010100111101010001101000100110011111110111000110111110000101000010001...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 250747 token(s): yes count is 1, no count is 250746

Test #8:

score: 0
Accepted
time: 3467ms
memory: 112172kb

input:

500000 500000
1001012121120221010111021201201221111112012022002200212020201011201100002101022020120101222010011021020121102110211202120100002100121201102122011220122201220100100210222110112212220002122002110022112000012111101112211102120012120102001020221021211022111211201120001022122011201112101111...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 248066 token(s): yes count is 2, no count is 248064

Test #9:

score: 0
Accepted
time: 1838ms
memory: 112204kb

input:

500000 500000
0001111011000101100010000100000001110010100101010011010010101010011001000101011110111000111100100001000000101101011001101001011010110111101100110111111110010011111111111100110000001100100001100010011000000001011011110010100111101010001101000100110011111110111000110111110000101000010001...

output:

Yes
No
Yes
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
Yes
No
No
No
Yes
Yes
No
No
No
Yes
No
No
No
Yes
No
No
Yes
No
No
No
No
No
No
No
Yes
No
Yes
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
Yes
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
Yes
N...

result:

ok 249864 token(s): yes count is 25722, no count is 224142

Test #10:

score: 0
Accepted
time: 1836ms
memory: 112264kb

input:

500000 500000
1001012121120221010111021201201221111112012022002200212020201011201100002101022020120101222010011021020121102110211202120100002100121201102122011220122201220100100210222110112212220002122002110022112000012111101112211102120012120102001020221021211022111211201120001022122011201112101111...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
Yes
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No...

result:

ok 250064 token(s): yes count is 16110, no count is 233954

Test #11:

score: 0
Accepted
time: 2348ms
memory: 112088kb

input:

500000 500000
0110100110010110100101100110100110010110011010010110100110010110100101100110100101101001100101100110100110010110100101100110100110010110011010010110100110010110011010011001011010010110011010010110100110010110100101100110100110010110011010010110100110010110100101100110100101101001100101...

output:

No
No
Yes
No
Yes
No
No
Yes
No
Yes
No
Yes
No
Yes
Yes
No
No
No
No
No
Yes
No
No
No
Yes
No
Yes
No
Yes
No
Yes
No
Yes
Yes
No
Yes
Yes
Yes
No
Yes
No
Yes
Yes
No
No
No
No
No
No
No
No
Yes
No
Yes
Yes
No
Yes
Yes
Yes
No
No
No
Yes
Yes
No
Yes
Yes
No
No
No
Yes
No
No
No
Yes
Yes
No
No
Yes
Yes
No
Yes
No
No
No
Yes
No
No...

result:

ok 499764 token(s): yes count is 13197, no count is 486567

Test #12:

score: 0
Accepted
time: 2637ms
memory: 112116kb

input:

500000 500000
0112122012202001122020012001011212202001200101122001011201121220122020012001011220010112011212202001011201121220011212201220200112202001200101122001011201121220200101120112122001121220122020012001011201121220011212201220200101121220122020011220200120010112122020012001011220010112011212...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 499741 token(s): yes count is 4, no count is 499737

Test #13:

score: 0
Accepted
time: 2974ms
memory: 112204kb

input:

500000 500000
1201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 495082 token(s): yes count is 25440, no count is 469642

Test #14:

score: 0
Accepted
time: 2948ms
memory: 112168kb

input:

500000 500000
1201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201...

output:

No
No
Yes
Yes
No
No
No
No
Yes
No
Yes
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
Yes
No
No
Yes
Yes
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
N...

result:

ok 495214 token(s): yes count is 25405, no count is 469809

Test #15:

score: 0
Accepted
time: 3001ms
memory: 112076kb

input:

500000 500000
1201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201201...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 495041 token(s): yes count is 26778, no count is 468263

Test #16:

score: 0
Accepted
time: 2556ms
memory: 112164kb

input:

500000 500000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
No
No
No
No
Yes
No
No
Yes
Yes
Yes
No
Yes
Yes
No
No
Yes
No
Yes
No
Yes
Yes
No
No
No
No
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
No
No
No
Yes
No
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
No
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
Yes
No
Yes
Yes
Yes
No
No
Y...

result:

ok 251625 token(s): yes count is 167813, no count is 83812

Test #17:

score: 0
Accepted
time: 2551ms
memory: 112096kb

input:

500000 500000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
No
Yes
No
No
No
Yes
Yes
No
No
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
Yes
No
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
No
No
Yes
No
Yes
Yes
Yes
Yes
No
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
...

result:

ok 251611 token(s): yes count is 167452, no count is 84159

Test #18:

score: 0
Accepted
time: 2556ms
memory: 112212kb

input:

500000 500000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
No
Yes
Yes
No
Yes
Yes
Yes
No
No
Yes
No
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
No
Yes
No
No
No
Yes
No
No
No
Yes
No
Yes
No
No
No
Yes
Yes
No
Yes
No
Yes...

result:

ok 251639 token(s): yes count is 167829, no count is 83810

Test #19:

score: 0
Accepted
time: 2402ms
memory: 112084kb

input:

500000 500000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
No
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
No
No
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
No
No
Yes
No
No
Yes
No
No
No
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
No
Yes
Yes
...

result:

ok 249959 token(s): yes count is 166274, no count is 83685

Test #20:

score: 0
Accepted
time: 2255ms
memory: 112164kb

input:

500000 500000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

Yes
Yes
Yes
Yes
No
Yes
No
No
Yes
No
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
No
No
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
No
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
No
No
No
No
No
No
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
No
Yes
No
Yes
Yes
Yes
Yes
No
No
No
Yes
No
Yes
No
Yes
Yes
Yes
Yes
...

result:

ok 251590 token(s): yes count is 167841, no count is 83749

Test #21:

score: 0
Accepted
time: 2136ms
memory: 112252kb

input:

500000 500000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

Yes
No
Yes
Yes
Yes
Yes
No
Yes
Yes
No
No
No
Yes
Yes
Yes
No
Yes
Yes
Yes
No
Yes
Yes
No
No
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
Yes
No
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
No
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Ye...

result:

ok 249944 token(s): yes count is 167276, no count is 82668

Test #22:

score: 0
Accepted
time: 2175ms
memory: 112256kb

input:

500000 500000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

No
Yes
Yes
Yes
Yes
Yes
No
No
No
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
No
Yes
Yes
Yes
No
No
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
No
Yes
Yes
Yes
No
Yes
No
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
No
Yes
Yes
No
Yes
Yes
Yes
No
Yes
Yes
No
Yes
No
Yes
Yes
Yes
No
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
...

result:

ok 249967 token(s): yes count is 168649, no count is 81318

Test #23:

score: 0
Accepted
time: 2174ms
memory: 112184kb

input:

500000 500000
2120211202121010200201010120211202102102011020120121200212101210200201212020122102020121011012101021211212012020122102020212122121202020200202020102011020101201211210210212011021201210100101210212100121201210100101210121011012101021200212010101200210101020200202012101022010121010200201...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No...

result:

ok 249676 token(s): yes count is 13, no count is 249663

Test #24:

score: 0
Accepted
time: 2263ms
memory: 112100kb

input:

500000 500000
1210202120021202012120120201011010202102012121010110101212102021020201102020120212121021211212012121202101210220121012021201212120021212102121010121200212101012021012020220202101202120212101101212021201020212022021202010120102121001212010210102021020020120201012121010200201012121012010...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 249788 token(s): yes count is 13, no count is 249775

Test #25:

score: 0
Accepted
time: 2355ms
memory: 112116kb

input:

500000 500000
1021201212020202010212020120120201212012010212121221212120102102121020210210202120102020202121021201201010121210121010202020202010120121010102120101200210102120101012102101020202020201012101212101010212121210120212101012021021020102121201212020201010010102020212102121201020120120210101...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 249720 token(s): yes count is 21, no count is 249699

Test #26:

score: 0
Accepted
time: 2310ms
memory: 112088kb

input:

500000 500000
2102012102020210212121020120121010120121012012021010212101212102012010201212121012101210212102102120210201020121012021201021012010212021210202012010212020102121202021202121012121021010120210210202021212020212120121202012101201201012021212101210120101020201020121020210121020212012021212...

output:

No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
N...

result:

ok 248946 token(s): yes count is 159, no count is 248787

Test #27:

score: 0
Accepted
time: 2215ms
memory: 112252kb

input:

500000 500000
2102121210121212120202012120202010201212102010201021012020201020210210101210121201021212020210102121012010210101020201021010202010201201021010101020212020101210120101201210102020102010101021202102120210121010201012120121202102020121010212120102102102020120121010121010102012012021012010...

output:

No
No
No
No
No
Yes
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
N...

result:

ok 249807 token(s): yes count is 383, no count is 249424

Test #28:

score: 0
Accepted
time: 2089ms
memory: 112248kb

input:

500000 500000
2120201021210101202021201212120202021010102021010212020102101010201021010201201012010101210101212012102102101010212102121202102010212120212102020212020121012012021020101210102012102021012121010121020101010210201021201021201201020202010202012020201201210101021010101202021020121202012020...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 248859 token(s): yes count is 994, no count is 247865

Test #29:

score: 0
Accepted
time: 2298ms
memory: 112184kb

input:

500000 500000
1021012012010212010210120121012010120202102120202121021021202012121020201021202012120121201202021021020121012101201010101212120201212020120101210210202010210102102102021212021202120212121201201210201210102010120202021212121010121201021021202102020102121202010212020121020210212120212012...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
...

result:

ok 248886 token(s): yes count is 2083, no count is 246803

Test #30:

score: 0
Accepted
time: 2278ms
memory: 112240kb

input:

500000 500000
1202021012101201201021212121212121201212121012102020120210101212101201212020101020101210101212120201010201201021202121202020201201202010210120201202121010121010102102121010121021212021202021021202120102101202102020210102120202020212120202120212021020121212020102120121012120201202120121...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
...

result:

ok 248858 token(s): yes count is 4672, no count is 244186

Test #31:

score: 0
Accepted
time: 2255ms
memory: 112268kb

input:

500000 500000
0100201020101001010102010202020201010201002020102020101001010201020100100201010020010101010102020202010010201020202020200102002010001020201010010102001000101010020000101020102001002020201002020101020101010102010020201010102020200010102020101002020002002002010101010201020020102020101020...

output:

No
No
No
No
No
No
No
No
No
No
Yes
Yes
No
No
Yes
No
Yes
No
Yes
No
No
Yes
Yes
No
Yes
Yes
Yes
No
Yes
Yes
Yes
No
No
No
No
No
Yes
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Yes
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No...

result:

ok 437390 token(s): yes count is 73249, no count is 364141