QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#852639#9726. AUSucup-team5243#AC ✓3ms3880kbC++2317.9kb2025-01-11 13:19:522025-01-11 13:20:02

Judging History

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

  • [2025-01-11 13:20:02]
  • 评测
  • 测评结果:AC
  • 用时:3ms
  • 内存:3880kb
  • [2025-01-11 13:19:52]
  • 提交

answer

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

#ifndef LOCAL_TEST
#pragma GCC target ("avx")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
#endif // LOCAL_TEST

using ll = long long;
using i128 = __int128_t;
using str = string;
using pii = pair<int, int>; using pll = pair<ll, ll>;
using vi = vector<int>;  using vvi = vector<vi>; using vvvi = vector<vvi>;
using vl = vector<ll>;  using vvl = vector<vl>; using vvvl = vector<vvl>;
using vb = vector<bool>; using vvb = vector<vb>; using vvvb = vector<vvb>;
using vc = vector<char>; using vvc = vector<vc>; using vvvc = vector<vvc>;
using vd = vector<double>; using vvd = vector<vd>; using vvvd = vector<vvd>;
using vs = vector<string>; using vvs = vector<vector<string>>; using vvvs = vector<vector<vector<string>>>;

template<typename T> vector<vector<T>> vv(int h, int w, T val = T()) { return vector(h, vector<T>(w, val)); }
template<typename T> vector<vector<vector<T>>> vvv(int h1, int h2, int h3, T val = T()) { return vector(h1, vector(h2, vector<T>(h3, val))); }
template<typename T> vector<vector<vector<vector<T>>>> vvvv(int h1, int h2, int h3, int h4, T val = T()) { return vector(h1, vector(h2, vector(h3, vector<T>(h4, val)))); }

template <class T> using priority_queue_min = priority_queue<T, vector<T>, greater<T>>;

constexpr double PI = 3.14159265358979323;
constexpr int INF = 100100111; constexpr ll INFL = 3300300300300300491LL;
float EPS = 1e-8; double EPSL = 1e-10;


struct Nyan { Nyan() { cin.tie(nullptr); ios::sync_with_stdio(false); cout << fixed << setprecision(18); } } nyan;

#define all(a) (a).begin(), (a).end()
#define len(x) ((ll)(x).size())
#define sz(x) ((ll)(x).size())
#define rep1(n) for(ll dummy_iter = 0LL; dummy_iter < n; ++dummy_iter) // 0,1,...,n-1
#define rep2(i, n) for(ll i = 0LL, i##_counter = 0LL; i##_counter < ll(n); ++(i##_counter), (i) = i##_counter) // i=0,1,...,n-1
#define rep3(i, s, t) for(ll i = ll(s), i##_counter = ll(s); i##_counter < ll(t); ++(i##_counter), (i) = (i##_counter)) // i=s,s+1,...,t-1
#define rep4(i, s, t, step) for(ll i##_counter = step > 0 ? ll(s) : -ll(s), i##_end = step > 0 ? ll(t) : -ll(t), i##_step = abs(step), i = ll(s); i##_counter < i##_end; i##_counter += i##_step, i = step > 0 ? i##_counter : -i##_counter) // i=s,s+step,...,<t
#define overload4(a, b, c, d, e, ...) e
#define rep(...) overload4(__VA_ARGS__, rep4, rep3, rep2, rep1)(__VA_ARGS__)
#define repe(a, v) for(auto&& a : (v)) // iterate over all elements in v
#define repc(a, v) for(const auto& a : (v)) // iterate over all elements in v
#define smod(n, m) ((((n) % (m)) + (m)) % (m))
#define sdiv(n, m) (((n) - smod(n, m)) / (m))
#define uniq(a) {sort(all(a)); (a).erase(unique(all(a)), (a).end());}

int Yes(bool b=true) { cout << (b ? "Yes\n" : "No\n"); return 0; };
int YES(bool b=true) { cout << (b ? "YES\n" : "NO\n"); return 0; };
int No(bool b=true) {return Yes(!b);};
int NO(bool b=true) {return YES(!b);};

template<typename T, size_t N> T max(array<T, N>& a) { return *max_element(all(a)); };
template<typename T, size_t N> T min(array<T, N>& a) { return *min_element(all(a)); };
template<typename T> T max(vector<T>& a) { return *max_element(all(a)); };
template<typename T> T min(vector<T>& a) { return *min_element(all(a)); };
template<typename T> vector<T> vec_slice(const vector<T>& a, int l, int r) { vector<T> rev; rep(i, l, r) rev.push_back(a[i]); return rev; };
template<typename T> vector<T> vec_slice(const vector<T>&& a, int l, int r) { vector<T> rev; rep(i, l, r) rev.push_back(a[i]); return rev; };
template<typename T> T sum(vector<T>& a, T zero = T(0)) { T rev = zero; rep(i, sz(a)) rev += a[i]; return rev; };
template<typename T> T sum(vector<T>&& a, T zero = T(0)) { T rev = zero; rep(i, sz(a)) rev += a[i]; return rev; };


template <class T> inline vector<T>& operator--(vector<T>& v) { repe(x, v) --x; return v; }
template <class T> inline vector<T>& operator++(vector<T>& v) { repe(x, v) ++x; return v; }

ll powll(ll a, ll n) {
    ll res = 1;
    while (n > 0) {
        if (n & 1) res = (res * a);
        if (n > 1) a = (a * a);
        n >>= 1;
    }
    return res;
}
ll powm32(ll a, ll n, int mod) {
    ll res = 1;
    while (n > 0) {
        if (n & 1) res = (res * a) % mod;
        if (n > 1) a = (a * a) % mod;
        n >>= 1;
    }
    return res % mod;
}
ll powm64(i128 a,i128 n,ll mod){
    i128 res = 1;
    while (n > 0) {
        if (n & 1) res = (res * a) % mod;
        if (n > 1) a = (a * a) % mod;
        n >>= 1;
    }
    return res % mod;
}
ll sqrtll(ll x) {
    assert(x >= 0);
    ll rev = sqrt(x);
    while(rev * rev > x) --rev;
    while((rev+1) * (rev+1)<=x) ++rev;
    return rev;
}

template <class T> inline bool chmax(T& M, const T& x) { if (M < x) { M = x; return true; } return false; }
template <class T> inline bool chmin(T& m, const T& x) { if (m > x) { m = x; return true; } return false; }

template <class T, class U> inline istream& operator>>(istream& is, pair<T, U>& p);
template <class T> inline istream& operator>>(istream& is, vector<T>& v);
template <class T, class U> inline ostream& operator<<(ostream& os, const pair<T, U>& p);
template <class T> inline ostream& operator<<(ostream& os, const vector<T>& v);
template <typename T, typename S> ostream &operator<<(ostream &os, const map<T, S> &mp);
template <typename T> ostream &operator<<(ostream &os, const set<T> &st);
template <typename T> ostream &operator<<(ostream &os, const multiset<T> &st);
template <typename T> ostream &operator<<(ostream &os, const unordered_set<T> &st);
template <typename T> ostream &operator<<(ostream &os, deque<T> q);
template <class T, class Container, class Compare> ostream &operator<<(ostream &os, priority_queue<T, Container, Compare> pq);

template <class T, class U> inline istream& operator>>(istream& is, pair<T, U>& p) { is >> p.first >> p.second; return is; }
template <class T> inline istream& operator>>(istream& is, vector<T>& v) { repe(x, v) is >> x; return is; }
template <class T, class U> inline ostream& operator<<(ostream& os, const pair<T, U>& p) { os << p.first << " " << p.second; return os; }
template <class T> inline ostream& operator<<(ostream& os, const vector<T>& v) { rep(i, sz(v)) { os << v.at(i); if (i != sz(v) - 1) os << " "; } return os; }
template <typename T, typename S> ostream &operator<<(ostream &os, const map<T, S> &mp) { for (auto &[key, val] : mp) { os << key << ":" << val << " "; } return os; }
template <typename T> ostream &operator<<(ostream &os, const set<T> &st) { auto itr = st.begin(); for (int i = 0; i < (int)st.size(); i++) { os << *itr << (i + 1 != (int)st.size() ? " " : ""); itr++; } return os; }
template <typename T> ostream &operator<<(ostream &os, const multiset<T> &st) { auto itr = st.begin(); for (int i = 0; i < (int)st.size(); i++) { os << *itr << (i + 1 != (int)st.size() ? " " : ""); itr++; } return os; }
template <typename T> ostream &operator<<(ostream &os, const unordered_set<T> &st) { ll cnt = 0; for (auto &e : st) { os << e << (++cnt != (int)st.size() ? " " : ""); } return os; }
template <typename T> ostream &operator<<(ostream &os, deque<T> q) { while (q.size()) { os << q.front(); q.pop_front(); if (q.size()) os << " "; } return os; }
template <class T, class Container, class Compare> ostream &operator<<(ostream &os, priority_queue<T, Container, Compare> pq) { while (pq.size()) { os << pq.top() << " "; pq.pop(); } return os; }
#define dout(x) cout << fixed << setprecision(10) << x << endl

#define read1(a) cin >> a;
#define read2(a, b) cin >> a >> b;
#define read3(a, b, c) cin >> a >> b >> c;
#define read4(a, b, c, d) cin >> a >> b >> c >> d;
#define read5(a, b, c, d, e) cin >> a >> b >> c >> d >> e;
#define read6(a, b, c, d, e, f) cin >> a >> b >> c >> d >> e >> f;
#define read7(a, b, c, d, e, f, g) cin >> a >> b >> c >> d >> e >> f >> g;
#define read8(a, b, c, d, e, f, g, h) cin >> a >> b >> c >> d >> e >> f >> g >> h;

#define overload_read(a, b, c, d, e, f, g, h, i, ...) i
#define read(...) overload_read(__VA_ARGS__,read8,read7,read6,read5,read4,read3,read2,read1)(__VA_ARGS__)

#ifdef LOCAL_TEST
#define inner_output1(a) cout << a << endl;cerr << "[OUTPUT #" << __LINE__ << "] " << a << endl;
#define inner_output2(a, b) cout << a << " " << b << endl;cerr << "[OUTPUT #" << __LINE__ << "] " << a << " " <<b << endl;
#define inner_output3(a, b, c) cout << a << " " << b << " " << c << endl;cerr << "[OUTPUT #" << __LINE__ << "] " << a << " " << b << " " << c << endl;
#define inner_output4(a, b, c, d) cout << a << " " << b << " " << c << " " << d << endl;cerr << "[OUTPUT #" << __LINE__ << "] " << a << " " << b << " " << c << " " << d << endl;
#define inner_output5(a, b, c, d, e) cout << a << " " << b << " " << c << " " << d << " " << e << endl;cerr << "[OUTPUT #" << __LINE__ << "] " << a << " " << b << " " << c << " " << d << " " << e << endl;
#define inner_output6(a, b, c, d, e, f) cout << a << " " << b << " " << c << " " << d << " " << e << " " << f << endl;cerr << "[OUTPUT #" << __LINE__ << "] " << a << " " << b << " " << c << " " << d << " " << e << " " << f << endl;
#define inner_output7(a, b, c, d, e, f, g) cout << a << " " << b << " " << c << " " << d << " " << e << " " << f << " " << g << endl;cerr << "[OUTPUT #" << __LINE__ << "] " << a << " " << b << " " << c << " " << d << " " << e << " " << f << " " << g << endl;
#define inner_output8(a, b, c, d, e, f, g, h) cout << a << " " << b << " " << c << " " << d << " " << e << " " << f << " " << g << " " << h << endl;cerr << "[OUTPUT #" << __LINE__ << "] " << a << " " << b << " " << c << " " << d << " " << e << " " << f << " " << g << " " << h << endl;

#else

#define inner_output1(a) cout << a << endl;
#define inner_output2(a, b) cout << a << " " << b << endl;
#define inner_output3(a, b, c) cout << a << " " << b << " " << c << endl;
#define inner_output4(a, b, c, d) cout << a << " " << b << " " << c << " " << d << endl;
#define inner_output5(a, b, c, d, e) cout << a << " " << b << " " << c << " " << d << " " << e << endl;
#define inner_output6(a, b, c, d, e, f) cout << a << " " << b << " " << c << " " << d << " " << e << " " << f << endl;
#define inner_output7(a, b, c, d, e, f, g) cout << a << " " << b << " " << c << " " << d << " " << e << " " << f << " " << g << endl;
#define inner_output8(a, b, c, d, e, f, g, h) cout << a << " " << b << " " << c << " " << d << " " << e << " " << f << " " << g << " " << h << endl;

#endif
#define overload_inner_output(a, b, c, d, e, f, g, h, i, ...) i
#define out(...) overload_inner_output(__VA_ARGS__,inner_output8,inner_output7,inner_output6,inner_output5,inner_output4,inner_output3,inner_output2,inner_output1)(__VA_ARGS__)

#define ii(...) ll __VA_ARGS__; read(__VA_ARGS__)
#define si(...) string __VA_ARGS__; read(__VA_ARGS__)
#define ci(...) char __VA_ARGS__; read(__VA_ARGS__)
#define di(...) double __VA_ARGS__; read(__VA_ARGS__)
#define li(name,size); vector<ll> name(size); read(name)
#define lli(name,H,W); vector name(H,vector<ll>(W));rep(i,H) cin >> name[i];


#ifdef LOCAL_TEST
#define inner_debug1(a) cerr << "[DEBUG#" << __LINE__ << "] " << #a << " = " << a << endl;
#define inner_debug2(a, b) cerr << "[DEBUG#" << __LINE__ << "] "<< #a << " = " << a << ", " << #b << " = " << b << endl;
#define inner_debug3(a, b, c) cerr << "[DEBUG#" << __LINE__ << "] "<< #a << " = " << a << ", " << #b << " = " << b << ", " << #c << " = " << c << endl;
#define inner_debug4(a, b, c, d) cerr << "[DEBUG#" << __LINE__ << "] "<< #a << " = " << a << ", " << #b << " = " << b << ", " << #c << " = " << c << ", " << #d << " = " << d << endl;
#define inner_debug5(a, b, c, d, e) cerr << "[DEBUG#" << __LINE__ << "] "<< #a << " = " << a << ", " << #b << " = " << b << ", " << #c << " = " << c << ", " << #d << " = " << d << ", " << #e << " = " << e << endl;
#define inner_debug6(a, b, c, d, e, f) cerr << "[DEBUG#" << __LINE__ << "] "<< #a << " = " << a << ", " << #b << " = " << b << ", " << #c << " = " << c << ", " << #d << " = " << d << ", " << #e << " = " << e << ", " << #f << " = " << f << endl;
#define inner_debug7(a, b, c, d, e, f, g) cerr << "[DEBUG#" << __LINE__ << "] "<< #a << " = " << a << ", " << #b << " = " << b << ", " << #c << " = " << c << ", " << #d << " = " << d << ", " << #e << " = " << e << ", " << #f << " = " << f << ", " << #g << " = " << g << endl;
#define inner_debug8(a, b, c, d, e, f, g, h) cerr << "[DEBUG#" << __LINE__ << "] "<< #a << " = " << a << ", " << #b << " = " << b << ", " << #c << " = " << c << ", " << #d << " = " << d << ", " << #e << " = " << e << ", " << #f << " = " << f << ", " << #g << " = " << g << ", " << #h << " = " << h << endl;

#define overload_inner_debug(a, b, c, d, e, f, g, h, i, ...) i
#define debug(...) overload_inner_debug(__VA_ARGS__,inner_debug8,inner_debug7,inner_debug6,inner_debug5,inner_debug4,inner_debug3,inner_debug2,inner_debug1)(__VA_ARGS__)

#else
#define debug(...);
#endif // LOCAL_TEST


inline ll ctz(ll x) { return __builtin_ctzll(x);}
inline ll clz(ll x) { return __builtin_clzll(x);}
inline ll popcount(ll x) { return __builtin_popcountll(x);}
inline bool inrange(ll x, ll a, ll b) { return a <= x && x < b; }
template <typename T> inline ll findll(vector<T>& v, T x) { auto tmp = find(all(v), x);if(tmp == v.end()){return -1;}else{return distance(v.begin(),tmp); }}
inline ll findll(string& s, char x) { auto tmp = find(all(s), x);if(tmp == s.end()){return -1;}else{return distance(s.begin(),tmp); }}
inline ll ceildiv(ll x,ll y){return (x+y-1)/y;}


#define allit(a,pred) [&]{repc(it,a){if(!(pred)) return false;}return true;}()
#define anyit(a,pred) [&]{repc(it,a){if((pred)) return true;}return false;}()

#define mapit(a, pred) ([&]() { \
    decltype(a)::value_type it; \
    vector<decltype(pred)> result_mapit(a.size()); \
    rep(idx,a.size()){\
        decltype(a)::value_type& it = a[idx];\
        result_mapit[idx] = pred;\
    }\
    return result_mapit; \
})()

#define filterit(a, pred) ([&]() { \
    decltype(a) result_filterit; \
    rep(idx,a.size()){\
        decltype(a)::value_type& it = a[idx];\
        if(pred){\
            result_filterit.push_back(it);\
        }\
    }\
    return result_filterit; \
})()

#define applyit(a, pred) { \
    rep(idx,a.size()){\
        decltype(a)::value_type& it = a[idx];\
        a[idx] = pred;\
    }\
}

#define countit(a, pred) ([&]() { \
    ll result_countit = 0; \
    rep(idx,a.size()){\
        decltype(a)::value_type& it = a[idx];\
        if(pred){\
            result_countit++;\
        }\
    }\
    return result_countit; \
})()

#define sortByIt(a,pred) {\
    sort(all(a),[&](const decltype(a)::value_type& left_value, const decltype(a)::value_type& right_value){auto it = left_value;auto x_value = pred;it = right_value;auto y_value = pred;return x_value<y_value;});\
}

ll minIndex(vector<ll>& a) {
    ll minIndex = 0;
    rep(i, 1, sz(a)) {
        if (a[i] < a[minIndex]) {
            minIndex = i;
        }
    }
    return minIndex;
}

ll maxIndex(vector<ll>& a) {
    ll maxIndex = 0;
    rep(i, 1, sz(a)) {
        if (a[i] > a[maxIndex]) {
            maxIndex = i;
        }
    }
    return maxIndex;
}

template<typename T> vector<T> sorted(vector<T> X){
    sort(all(X));
    return X;
}

vector<string> split(const string& s,char c){
    vector<string> res;
    res.push_back("");
    repc(a,s){
        if(a==c){
            res.push_back("");
        }else{
            res.back() += a;
        }
    }
    return res;
}
#ifndef ATCODER_DSU_HPP
#define ATCODER_DSU_HPP 1

#include <algorithm>
#include <cassert>
#include <vector>

namespace atcoder {

struct dsu {
  public:
    dsu() : _n(0) {}
    explicit dsu(int n) : _n(n), parent_or_size(n, -1) {}

    int merge(int a, int b) {
        assert(0 <= a && a < _n);
        assert(0 <= b && b < _n);
        int x = leader(a), y = leader(b);
        if (x == y) return x;
        if (-parent_or_size[x] < -parent_or_size[y]) std::swap(x, y);
        parent_or_size[x] += parent_or_size[y];
        parent_or_size[y] = x;
        return x;
    }

    bool same(int a, int b) {
        assert(0 <= a && a < _n);
        assert(0 <= b && b < _n);
        return leader(a) == leader(b);
    }

    int leader(int a) {
        assert(0 <= a && a < _n);
        if (parent_or_size[a] < 0) return a;
        return parent_or_size[a] = leader(parent_or_size[a]);
    }

    int size(int a) {
        assert(0 <= a && a < _n);
        return -parent_or_size[leader(a)];
    }

    std::vector<std::vector<int>> groups() {
        std::vector<int> leader_buf(_n), group_size(_n);
        for (int i = 0; i < _n; i++) {
            leader_buf[i] = leader(i);
            group_size[leader_buf[i]]++;
        }
        std::vector<std::vector<int>> result(_n);
        for (int i = 0; i < _n; i++) {
            result[i].reserve(group_size[i]);
        }
        for (int i = 0; i < _n; i++) {
            result[leader_buf[i]].push_back(i);
        }
        result.erase(
            std::remove_if(result.begin(), result.end(),
                           [&](const std::vector<int>& v) { return v.empty(); }),
            result.end());
        return result;
    }

  private:
    int _n;
    std::vector<int> parent_or_size;
};

}  // namespace atcoder

#endif  // ATCODER_DSU_HPP
using namespace atcoder;

void solve(){
    si(S1,S2,S3);
    debug(S1,S2,S3);
    if(len(S1) == len(S2) && len(S1) != len(S3)){
        out("YES");
        return;
    }
    if(len(S1) != len(S2)){
        out("NO");
        return;
    }
    dsu d(26);
    rep(i,len(S1)){
        debug(S1[i]-'a',S2[i]-'a');
        d.merge(S1[i]-'a',S2[i]-'a');
    }
    debug(d.same(0,2));
    debug(d.same(1,3));
    rep(i,len(S3)){
        if(!d.same(S1[i]-'a',S3[i]-'a')){
            debug(i);
            out("YES");
            return;
        }
    }
    out("NO");
    return;
}

int main(){
    ii(T);
    rep(T){
        solve();
    }
}

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

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3664kb

input:

4
abab
cdcd
abce
abab
cdcd
abcd
abab
cdcd
abc
x
yz
def

output:

YES
NO
YES
NO

result:

ok 4 lines

Test #2:

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

input:

10
ekkzjwextuoazxsosiiiditwrjiztfvxtzaztmdfhxroaqkjcdgsgiitkfglcrtgjquspjyjtodyhxetldbhvxampcvbinzgksxkunduhvbddakqswurshbnuazthfnxmsuyypznmxmatsnvpqovscnkkcjphtcmcsqteeikwggnugskjjwttvlrxmmrkyltxjhfiqicttcfumurdrmiqauruywgdomxxpbeunliyvsutrneexoyckjflhnmmaaovxubnptlemptxbhrflbnfcowktydgbugdxvkvegza...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO

result:

ok 10 lines

Test #3:

score: 0
Accepted
time: 1ms
memory: 3664kb

input:

100
dntfvviytogwqljvoksaovstrqwpovkncxvmytnvcaoikctmgukaxlivmwahenydtswyowpdvggeeyzykdiojltpxuzzwphdqfsh
anbbtriynochhmrtsmjifvatlfsmwiimvxbmyoavcmfiioxatckaxcikmwazenjmdleyjwndvggqkazikdeofaqpbuzkupshfhgh
anbflviytfylqlpvvmjaovajllwpoukmvwemgtivvaonkoxagukaxriyuvmypnymtdqyocpdvcgqkazykrihjbipxquzup...

output:

YES
YES
NO
NO
NO
NO
NO
NO
NO
YES
NO
NO
YES
NO
NO
NO
YES
YES
YES
YES
YES
NO
YES
NO
YES
NO
NO
NO
NO
NO
YES
NO
NO
NO
NO
YES
NO
YES
NO
NO
YES
NO
YES
NO
NO
YES
NO
NO
NO
YES
NO
NO
YES
NO
NO
YES
NO
NO
NO
YES
NO
NO
YES
NO
NO
YES
YES
NO
YES
NO
NO
NO
YES
NO
NO
NO
YES
YES
YES
NO
YES
NO
NO
YES
NO
NO
NO
NO
NO
NO...

result:

ok 100 lines

Test #4:

score: 0
Accepted
time: 0ms
memory: 3736kb

input:

1000
armvnnqped
esmswdspfz
czwpnnqpfz
tynubfwity
tygubajvty
tygrqagvty
fzhbxdpubn
jxqbvdpumd
jbhbokpuld
smlbevdsjj
rmkbevzujj
rmkbevdsfd
hrojqfcpy
qpojqjcpyu
erojqfmnsu
ywcdpimkgf
xwtdexmegf
pwgdpckkg
miotgaeyif
mnmigmlljc
ynmtcapyip
oziodvpjza
ofikevppqr
omikuppgza
stgwxovhmv
jtumxonqcp
jogmvouqmv
...

output:

YES
YES
YES
YES
NO
YES
YES
YES
YES
NO
YES
YES
NO
NO
NO
YES
YES
YES
NO
YES
YES
YES
NO
YES
YES
YES
YES
NO
YES
YES
YES
NO
NO
NO
YES
YES
YES
YES
YES
YES
YES
YES
NO
YES
YES
YES
NO
YES
YES
YES
YES
YES
NO
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
NO
YES
YES
YES
NO
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
...

result:

ok 1000 lines

Test #5:

score: 0
Accepted
time: 3ms
memory: 3804kb

input:

10000
b
e
a
o
o
l
w
z
w
r
s
r
g
i
m
n
g
g
o
u
u
p
p
p
g
g
g
z
x
x
z
z
m
a
a
z
e
j
d
e
m
e
q
a
t
p
f
p
e
z
h
u
w
u
x
x
n
e
m
e
f
f
c
r
j
r
u
o
r
f
f
f
j
e
n
w
x
m
f
h
f
i
q
w
e
e
w
s
r
m
r
r
o
o
j
l
b
b
w
x
x
z
s
x
x
g
v
s
h
j
j
h
h
d
h
j
j
c
d
t
z
v
v
q
v
n
j
j
q
m
z
w
p
p
s
d
c
l
c
c
c
l
s
a
r
a
m
...

output:

YES
YES
NO
NO
YES
NO
NO
NO
NO
NO
YES
YES
YES
NO
YES
NO
YES
NO
YES
NO
YES
NO
YES
NO
YES
YES
NO
YES
YES
YES
YES
YES
YES
YES
NO
YES
NO
YES
NO
YES
NO
YES
YES
YES
YES
YES
NO
YES
YES
YES
NO
YES
YES
YES
YES
YES
NO
YES
YES
NO
NO
YES
NO
YES
YES
YES
YES
NO
YES
YES
YES
NO
NO
YES
YES
NO
NO
NO
NO
NO
YES
NO
YES
Y...

result:

ok 10000 lines

Test #6:

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

input:

100
atpbvcpxnfuhzsyasaobwqzwenbjgbgszmnpmiittrtugwqxfimiqyyeekluhbxxrzxmtuinkdokeodkzjjilkhnpxxlvehktgoj
atpbvcpxnfuhzsyasaobwqzwenbjgbgszmnpmiittrtugwqxfimiqyyeekluhbxxrzxmtuinkdokeodkzjjilkhnpxxlvehktgoj
atpbvcpxnfuhzsyasaobwqzwenbjgbgszmnpmiittrtugwqxfimiqyyeekluhbxxrzxmtuinkdokeodkzjjilkhnpxxlve...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
NO
NO
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
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...

result:

ok 100 lines

Test #7:

score: 0
Accepted
time: 0ms
memory: 3672kb

input:

100
crrydsqzrsjajhukkyeflikzldygkbxqvjhxjwkbobnerynpmemlmhbbrbxmeswvnwaxwfvjbdrwvghhnhlziurhasjdmeodjqax
crrbddqaryjajhukkyefliuipdygkbxqvjdxjlzbcpneruxhqemhpiabrbumrpuvnwaxzfvjyoqwvshqnciziuhhasjxyqodjqaw
bkrbydqzryjawhukcycumikilqyhkxxqvjdxjlkrcpnecuxhmdmlmiabrbuzeswvnwaxzivjborwvshhnciziurhcsjxyq...

output:

YES
NO
YES
NO
YES
YES
NO
NO
NO
NO
YES
NO
NO
NO
NO
YES
YES
NO
YES
YES
NO
YES
NO
YES
NO
NO
YES
YES
YES
NO
NO
NO
YES
YES
YES
YES
NO
NO
NO
YES
NO
NO
NO
YES
YES
YES
YES
YES
NO
NO
YES
YES
NO
NO
YES
NO
YES
NO
NO
NO
NO
YES
YES
NO
YES
YES
NO
YES
YES
YES
YES
YES
YES
NO
NO
YES
NO
YES
NO
NO
NO
NO
NO
NO
NO
NO
NO...

result:

ok 100 lines

Test #8:

score: 0
Accepted
time: 1ms
memory: 3876kb

input:

100
alpjxyhwojswxolmpzbdmaqlctirzdbooshfezqaymfoylmbpoyhcurxsoocrszygtwxypghxrfxgplnrfyzbsvysuvjydcgvkuc
alurxwiwoqswfofdgzbeeycmomdrzlnooqhxmzqihzfkyatbjvyvcsrxsoohvtkdjawbysursrfbcdqtrftvbrwpzbvpjdcovrty
alillwhsojuwfolmgvhpmycmomdkflbhwqmfeimabhfovlycpvgvaxujbkbovlkgjatpykuxcofxggqtdbyvfrwcsupmyd...

output:

NO
NO
NO
YES
YES
NO
NO
NO
YES
NO
NO
NO
NO
YES
YES
YES
YES
YES
YES
NO
YES
YES
YES
NO
YES
YES
NO
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
NO
YES
YES
YES
YES
NO
NO
YES
YES
YES
YES
YES
YES
YES
YES
YES
NO
YES
NO
YES
YES
NO
NO
YES
NO
YES
NO
YES
YES
NO
YES
NO
YES
NO
NO
YES
YES
NO
YES
YES
YES
NO
YES
YES
...

result:

ok 100 lines

Test #9:

score: 0
Accepted
time: 1ms
memory: 3672kb

input:

100
jnotnsyfaondjpdtgtfvayhlsuwiivaaihgeqxpiboelufliodvkrlwvkkvkuduzemtkcvcmeevoafphkajnknfdkegqbmjxwnva
czrtnttvxwkdbpslyvfvyhbouuufblihshsellwcfohhealiotngqlbvktcqhkozugcpcycmzqabafxhrahnayxecbgnymalivva
czstxshfacbcspstgufqmyboelxibnhzibsevlcibqhhgykaorvcqfbikfdwhkwschygavcbaqvgmqgmzojnkrfdcroque...

output:

NO
NO
NO
NO
YES
YES
NO
NO
NO
NO
YES
NO
NO
NO
NO
YES
YES
NO
NO
YES
YES
YES
YES
NO
NO
NO
NO
NO
YES
NO
YES
NO
NO
NO
NO
YES
NO
YES
YES
YES
NO
NO
YES
NO
NO
NO
NO
NO
YES
YES
NO
NO
NO
NO
YES
NO
NO
NO
NO
NO
YES
NO
YES
NO
NO
NO
NO
NO
NO
YES
NO
NO
NO
YES
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
NO
NO
NO
NO
NO
NO
NO
NO
...

result:

ok 100 lines

Test #10:

score: 0
Accepted
time: 0ms
memory: 3588kb

input:

100
cqbmloxpykxngccrwjwtulanmpfcjhcdgqryvpomwvnwjsdficuqivxzszsoheaquaigwdbkgfexynblmvwzxrjigsknnnvrhjct
cqbmloxpykxngccrwjwtulanmpfcjhcdgqryvpomwvnwjsdficuqivxzszsoheaquaigwdbkgfexynblmvwzxrjigsknnnvrhjct
cqbmloxpykxngccrwjwtulanmpfcjhcdgqryvpomwvnwjsdficuqivxzszsoheaquaigwdbkgfexynblmvwzxrjigsknnn...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
YES
YES
YES
NO
NO
NO
YES
NO
YES
NO
NO
YES
YES
NO
YES
YES
NO
YES
NO
NO
NO
YES
NO
NO
NO
NO
YES
NO
NO
NO
NO
YES
YES
YES
YES
NO
NO
YES
NO
NO
YES
NO
NO
YES
NO
NO
NO
NO
YES
YES
YES
NO
NO
NO
YES
YES
YES
NO
YES
YES
NO
NO
NO
NO
YES
NO
YES
NO
NO
YES
YES
NO
NO
NO
NO
YES
...

result:

ok 100 lines

Test #11:

score: 0
Accepted
time: 0ms
memory: 3816kb

input:

100
dxawxwjqawdgsbpkvlhaahekktmyqncuxmbvbygwqsfkloqxfgjldaoniuitzhvxoznrghrcixowexxjfhishfzmjvryyinvyxbp
hxuzspvdavepcloaxpratlcntkkfihacamhhnrqcjoyglpvbqevlyfbhgynhwwjkmpeucbzvhqaokumrayiqnaqbvogmgmuwzglp
coawiavqlztoktwpbweaywykvkfysnrcnschxhycqsfpvmbesajydfukcpnvzvxxmzepgwpvqijwemmmfrunafzohrgwwm...

output:

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
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
YES
NO
NO
NO
NO
NO
NO
YES
NO
NO
NO
NO
NO
YES
N...

result:

ok 100 lines

Test #12:

score: 0
Accepted
time: 1ms
memory: 3804kb

input:

100
oizuhdqudplktctpzfguivswveavvktljnhcqrurjzqugflbijbygtworhonzotneqokmjoxftnaejlylrnpksnbnmfcewmcho
yizcheqzjclwtcowzfauonswaeavvttjeoycqqudyzouxwaqivbggtwcrftbztsiedvkykoufwnaetcclrnpvknbnmhcywogpfam
ypzuhceuthlwgydpefgcunswveevukzueoocjourjzqugxabhqzgetwosftbxtszopviyheofrnaergylrfpksnbnehcbzmf...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
NO
YES
YES
YES
NO
NO
NO
YES
NO
NO
NO
NO
NO
YES
NO
NO
YES
NO
YES
NO
NO
NO
YES
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
YES
NO
NO
YES
YES
YES
NO
NO
NO
NO
NO
YES
NO
YES
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
...

result:

ok 100 lines

Test #13:

score: 0
Accepted
time: 1ms
memory: 3652kb

input:

100
oawnwslkgpntkeeaadqfbwujsahkbwcutgebilyaguifbmfedrkrnpwpsukagnkbykvfzyafcnqetaxkpmtbpoxhnvkhpeveclmr
oawnwslkgpntkeeaadqfbwujsahkbwcutgebilyaguifbmfedrkrnpwpsukagnkbykvfzyafcnqetaxkpmtbpoxhnvkhpeveclmr
oawnwslkgpntkeeaadqfbwujsahkbwcutgebilyaguifbmfedrkrnpwpsukagnkbykvfzyafcnqetaxkpmtbpoxhnvkhpe...

output:

YES
NO
YES
NO
NO
YES
NO
YES
YES
NO
NO
NO
NO
NO
NO
YES
NO
NO
YES
NO
NO
YES
NO
YES
NO
NO
YES
NO
NO
NO
NO
NO
NO
NO
YES
NO
YES
YES
YES
YES
YES
YES
NO
NO
YES
NO
YES
NO
NO
NO
NO
YES
YES
YES
YES
YES
NO
NO
YES
NO
NO
NO
YES
NO
NO
YES
YES
NO
YES
NO
YES
NO
YES
NO
NO
YES
YES
YES
YES
YES
NO
NO
YES
NO
NO
YES
NO
N...

result:

ok 100 lines

Test #14:

score: 0
Accepted
time: 0ms
memory: 3688kb

input:

10
btaymycabwliyairerpyrdhtimbhedqnrelqughpjqltbdtfxkztihrazttstdogpizjgxschnywtrttocanlskvsmpruofzdsxqhzetuldamjmhuccgxdwhyorwsnbqufffclccnndjonqawjsnypymebqjlajlotfnaobyiotvziwzjogmysokeiggullrnovitgubzbhgvcwpgpjwiexrzcrxgkijnbolmarlqthsbtnlmylxmwbsemkyxpftvzmtfbdhfbdpoqervvhslebmamrsmatogvxvsmebo...

output:

NO
YES
NO
NO
NO
NO
NO
NO
NO
YES

result:

ok 10 lines

Test #15:

score: 0
Accepted
time: 0ms
memory: 3556kb

input:

10
dvkxoixlhhbopmeledkqhjqaaumarssxpapalefbcunqngjugxvwbpmtmokevterczwipyvryngbjbwlpfeystzyhuvthtlztwhldcvqjqbayrorywkfbtexrxadgtzktebcuibmhqvvaoysrghwrnrvjxsfbmeghwjivobkbxghygufklenvvzutujtwwuetgaefcilntlyfvpqvdrsjdizdqudajysuazwxxqicnvrkacdzoikllpsrojqrbkusvgaxazcphtuzcyzdixymmhmyqdvkwfhfxuyiezfu...

output:

NO
YES
NO
NO
NO
NO
NO
NO
NO
NO

result:

ok 10 lines

Test #16:

score: 0
Accepted
time: 0ms
memory: 3596kb

input:

10
evpdmygntnitrpprqwiisiunjzbcanbjdxxqmolhvszvaeoqbvflfygqserbvcpwqadihburvnuvumyrmdbvxiuvavydcgscgsvlkjqivyhglowohnnvbaagvbzqgtoqraqsmencttzmftwqvflatgsmxovkxxdgmzkxuqtohacyerfzesvjnnsqqgttkshiuyfyyqftoxqqskzgcxetcwvrdpeujwuqjoperbvumjdebissfozoexslpmrcvaylbbcnkkqvghdkrmckwijixrivbyyasgfbjonlbryne...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO

result:

ok 10 lines

Test #17:

score: 0
Accepted
time: 0ms
memory: 3664kb

input:

10
dybidgbtybbcdgkmueabawjhctxmdmqbwrcnofobmzrfixyycvldikbrnrcyrkvcogbhyfelgtznqlbxjtvhafakcwsgbgwotorvdrxufcjhdjwiiuvzicarwxanpyeodcsyyblcycuzheqnikengxapekuxgyytaudndwmothcjfxwnedtzqmkgjstjyjziuwdhapfesgkwcswqbwkahjishnueblpoxuizxifajtnyznsfqpokkvvttbhtoqmakjyebqngrbdppjsopjfthfjhvfcxycutnxzrduqms...

output:

YES
NO
NO
YES
YES
NO
NO
NO
NO
NO

result:

ok 10 lines

Test #18:

score: 0
Accepted
time: 0ms
memory: 3592kb

input:

10
rizlwsyebjypkwrozcggafoscyegorrrekrdgwsxapxfadwbzufvnjigkkcfmatoerffagmfgsknyveeeagyixgiogwszkcwhtgwwimgkjutemwishazueogldynmcoqcbpmzrpzjtcqttjjpahztpirabrhqmjctgilfogxgmrmoawkqbdcjkfrstcgjhuncwzosfqeqyazqieidbyhdywtatibgzyhcrzwricxwbmrfichhvdbqdgoboxqpbqrkbcrpbvtjmlmggwmnhjeqxmmtifshqnasxgmufhlw...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO

result:

ok 10 lines

Test #19:

score: 0
Accepted
time: 0ms
memory: 3820kb

input:

10
cymbusgwoepwnsleovgvtpfphirivromsanmimevhpnxitrgkacytydxvgnjnveymzbodftewddpjoadxoilzbpvchmqlnlsrxwdmniphaskcxuyencutcgpftutrpnnwzffixpamvwihizzrqblgyczvfitdvotwqlzkpjvbyyazynmnztbjpivjouatttzffljbhjrvfjpuliulfdtyfjcvwjajbgefesvvhkxavcthwdujkxxnqixxdicaoaetxmixnbdwudaccgabpmimfbkbrkufodlsdvsshlhs...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO

result:

ok 10 lines

Test #20:

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

input:

10
vtcitouunbkogxpjlzmjltxctgzuqtvciuniftojtetbknmzxpovlugrrtrokxsghwwnkwjkzaviicxdgvznyqgbfqhxbeatpzyfdtnbedlilzktzoewjjrauoshjukrznupshwjosddidpsegykvstxlwgtrnjtgahbcnmsoqyhgaxwrxgpqrurvibkrszsrufodntpdrmppdtzwobagblypaejcwatpmepukoiacbzedlzssawrtrjlbkhomomqqkpnykyxphwuijpzmajswkojthcgfruzhfljbahj...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO

result:

ok 10 lines

Test #21:

score: 0
Accepted
time: 1ms
memory: 3620kb

input:

100
lgzqwbzsvhkqllylanyzsbpgbgujovkaludefobeztfbwvbpdptygqepmaygzpovsmgudyrzcrfskmkbwgnkazxshvpwaponnmyhjwtunoheimnaeoowatrcukludgt
hqycwjzcuueyulelalyhsbvgblbobicmzuhvhohlxefwmibytdtstkjpbkoxpxzzzhwhhyuzfrkuoixcwfmkozwfeqhwifggoahqsrttrkwysmpfwcztwepkuklbjun
siylzupsvneylpaffnaedbsgbwpjbvckysbehoqh...

output:

YES
YES
NO
YES
NO
YES
NO
YES
NO
YES
YES
NO
NO
YES
YES
YES
YES
NO
NO
YES
NO
YES
YES
NO
NO
YES
YES
NO
NO
YES
YES
NO
NO
NO
YES
NO
NO
NO
NO
YES
NO
NO
NO
YES
YES
YES
YES
NO
YES
NO
NO
NO
NO
NO
YES
NO
YES
YES
NO
NO
YES
NO
YES
NO
YES
NO
YES
NO
YES
NO
NO
NO
YES
YES
YES
YES
YES
NO
NO
NO
NO
NO
YES
YES
NO
YES
N...

result:

ok 100 lines

Test #22:

score: 0
Accepted
time: 1ms
memory: 3660kb

input:

100
guzxrsudjzfdejrrvbsrzzgixqiyrpsxrjxqugfeaacslgfetciaihhsvohoumdwdlbhxmkfsofbppactjqswypjrjfympqngssafublleysrdpbiekjbyagzfsfrclrfbceypmcpdpth
tlwwxweouputifdfkewleheyhrdhfdar
jsgtgrccbhbvfpkzvjxwbaapvkjquzqvdsrkrlldfogvtafsoxuasyeoefcamcnnkcpmupeddvnrseyecmho
rtdysdevelfzjrnnczg
hdiaqgweatmrycrk...

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
YES
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

result:

ok 100 lines

Extra Test:

score: 0
Extra Test Passed