QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#755413#9558. The Devilucup-team3586#TL 4619ms304328kbC++2314.9kb2024-11-16 17:16:362024-11-16 17:17:57

Judging History

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

  • [2024-11-16 17:17:57]
  • 管理员手动重测该提交记录
  • 测评结果:TL
  • 用时:4619ms
  • 内存:304328kb
  • [2024-11-16 17:16:36]
  • 评测
  • 测评结果:0
  • 用时:4612ms
  • 内存:303800kb
  • [2024-11-16 17:16:36]
  • 提交

answer

#include<bits/stdc++.h>
//ATCoder Lib
#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,avx2,tune=native")
namespace atcoder {
 
namespace internal {
 
template <class T> struct simple_queue {
    std::vector<T> payload;
    int pos = 0;
    void reserve(int n) { payload.reserve(n); }
    int size() const { return int(payload.size()) - pos; }
    bool empty() const { return pos == int(payload.size()); }
    void push(const T& t) { payload.push_back(t); }
    T& front() { return payload[pos]; }
    void clear() {
        payload.clear();
        pos = 0;
    }
    void pop() { pos++; }
};
 
template <class E> struct csr {
    std::vector<int> start;
    std::vector<E> elist;
    explicit csr(int n, const std::vector<std::pair<int, E>>& edges)
        : start(n + 1), elist(edges.size()) {
        for (auto e : edges) {
            start[e.first + 1]++;
        }
        for (int i = 1; i <= n; i++) {
            start[i] += start[i - 1];
        }
        auto counter = start;
        for (auto e : edges) {
            elist[counter[e.first]++] = e.second;
        }
    }
};
 
}  // namespace internal
 
template <class Cap, class Cost> struct mcf_graph {
  public:
    mcf_graph() {}
    explicit mcf_graph(int n) : _n(n) {}
 
    int add_edge(int from, int to, Cap cap, Cost cost) {
        assert(0 <= from && from < _n);
        assert(0 <= to && to < _n);
        assert(0 <= cap);
        assert(0 <= cost);
        int m = int(_edges.size());
        _edges.push_back({from, to, cap, 0, cost});
        return m;
    }
 
    struct edge {
        int from, to;
        Cap cap, flow;
        Cost cost;
    };
 
    edge get_edge(int i) {
        int m = int(_edges.size());
        assert(0 <= i && i < m);
        return _edges[i];
    }
    std::vector<edge> edges() { return _edges; }
 
    std::pair<Cap, Cost> flow(int s, int t) {
        return flow(s, t, std::numeric_limits<Cap>::max());
    }
    std::pair<Cap, Cost> flow(int s, int t, Cap flow_limit) {
        return slope(s, t, flow_limit).back();
    }
    std::vector<std::pair<Cap, Cost>> slope(int s, int t) {
        return slope(s, t, std::numeric_limits<Cap>::max());
    }
    std::vector<std::pair<Cap, Cost>> slope(int s, int t, Cap flow_limit) {
        assert(0 <= s && s < _n);
        assert(0 <= t && t < _n);
        assert(s != t);
 
        int m = int(_edges.size());
        std::vector<int> edge_idx(m);
 
        auto g = [&]() {
            std::vector<int> degree(_n), redge_idx(m);
            std::vector<std::pair<int, _edge>> elist;
            elist.reserve(2 * m);
            for (int i = 0; i < m; i++) {
                auto e = _edges[i];
                edge_idx[i] = degree[e.from]++;
                redge_idx[i] = degree[e.to]++;
                elist.push_back({e.from, {e.to, -1, e.cap - e.flow, e.cost}});
                elist.push_back({e.to, {e.from, -1, e.flow, -e.cost}});
            }
            auto _g = internal::csr<_edge>(_n, elist);
            for (int i = 0; i < m; i++) {
                auto e = _edges[i];
                edge_idx[i] += _g.start[e.from];
                redge_idx[i] += _g.start[e.to];
                _g.elist[edge_idx[i]].rev = redge_idx[i];
                _g.elist[redge_idx[i]].rev = edge_idx[i];
            }
            return _g;
        }();
 
        auto result = slope(g, s, t, flow_limit);
 
        for (int i = 0; i < m; i++) {
            auto e = g.elist[edge_idx[i]];
            _edges[i].flow = _edges[i].cap - e.cap;
        }
 
        return result;
    }
 
  private:
    int _n;
    std::vector<edge> _edges;
 
    // inside edge
    struct _edge {
        int to, rev;
        Cap cap;
        Cost cost;
    };
 
    std::vector<std::pair<Cap, Cost>> slope(internal::csr<_edge>& g,
                                            int s,
                                            int t,
                                            Cap flow_limit) {
        // variants (C = maxcost):
        // -(n-1)C <= dual[s] <= dual[i] <= dual[t] = 0
        // reduced cost (= e.cost + dual[e.from] - dual[e.to]) >= 0 for all edge
 
        // dual_dist[i] = (dual[i], dist[i])
        std::vector<std::pair<Cost, Cost>> dual_dist(_n);
        std::vector<int> prev_e(_n);
        std::vector<bool> vis(_n);
        struct Q {
            Cost key;
            int to;
            bool operator<(Q r) const { return key > r.key; }
        };
        std::vector<int> que_min;
        std::vector<Q> que;
        auto dual_ref = [&]() {
            for (int i = 0; i < _n; i++) {
                dual_dist[i].second = std::numeric_limits<Cost>::max();
            }
            std::fill(vis.begin(), vis.end(), false);
            que_min.clear();
            que.clear();
 
            // que[0..heap_r) was heapified
            size_t heap_r = 0;
 
            dual_dist[s].second = 0;
            que_min.push_back(s);
            while (!que_min.empty() || !que.empty()) {
                int v;
                if (!que_min.empty()) {
                    v = que_min.back();
                    que_min.pop_back();
                } else {
                    while (heap_r < que.size()) {
                        heap_r++;
                        std::push_heap(que.begin(), que.begin() + heap_r);
                    }
                    v = que.front().to;
                    std::pop_heap(que.begin(), que.end());
                    que.pop_back();
                    heap_r--;
                }
                if (vis[v]) continue;
                vis[v] = true;
                if (v == t) break;
                // dist[v] = shortest(s, v) + dual[s] - dual[v]
                // dist[v] >= 0 (all reduced cost are positive)
                // dist[v] <= (n-1)C
                Cost dual_v = dual_dist[v].first, dist_v = dual_dist[v].second;
                for (int i = g.start[v]; i < g.start[v + 1]; i++) {
                    auto e = g.elist[i];
                    if (!e.cap) continue;
                    // |-dual[e.to] + dual[v]| <= (n-1)C
                    // cost <= C - -(n-1)C + 0 = nC
                    Cost cost = e.cost - dual_dist[e.to].first + dual_v;
                    if (dual_dist[e.to].second - dist_v > cost) {
                        Cost dist_to = dist_v + cost;
                        dual_dist[e.to].second = dist_to;
                        prev_e[e.to] = e.rev;
                        if (dist_to == dist_v) {
                            que_min.push_back(e.to);
                        } else {
                            que.push_back(Q{dist_to, e.to});
                        }
                    }
                }
            }
            if (!vis[t]) {
                return false;
            }
 
            for (int v = 0; v < _n; v++) {
                if (!vis[v]) continue;
                // dual[v] = dual[v] - dist[t] + dist[v]
                //         = dual[v] - (shortest(s, t) + dual[s] - dual[t]) +
                //         (shortest(s, v) + dual[s] - dual[v]) = - shortest(s,
                //         t) + dual[t] + shortest(s, v) = shortest(s, v) -
                //         shortest(s, t) >= 0 - (n-1)C
                dual_dist[v].first -= dual_dist[t].second - dual_dist[v].second;
            }
            return true;
        };
        Cap flow = 0;
        Cost cost = 0, prev_cost_per_flow = -1;
        std::vector<std::pair<Cap, Cost>> result = {{Cap(0), Cost(0)}};
        while (flow < flow_limit) {
            if (!dual_ref()) break;
            Cap c = flow_limit - flow;
            for (int v = t; v != s; v = g.elist[prev_e[v]].to) {
                c = std::min(c, g.elist[g.elist[prev_e[v]].rev].cap);
            }
            for (int v = t; v != s; v = g.elist[prev_e[v]].to) {
                auto& e = g.elist[prev_e[v]];
                e.cap += c;
                g.elist[e.rev].cap -= c;
            }
            Cost d = -dual_dist[s].first;
            flow += c;
            cost += c * d;
            if (prev_cost_per_flow == d) {
                result.pop_back();
            }
            result.push_back({flow, cost});
            prev_cost_per_flow = d;
        }
        return result;
    }
};
 
}
namespace atcoder {
 
template <class Cap> struct mf_graph {
  public:
    mf_graph() : _n(0) {}
    explicit mf_graph(int n) : _n(n), g(n) {}
 
    int add_edge(int from, int to, Cap cap) {
        assert(0 <= from && from < _n);
        assert(0 <= to && to < _n);
        assert(0 <= cap);
        // printf("%d %d %d\n",from,to,cap);
        int m = int(pos.size());
        pos.push_back({from, int(g[from].size())});
        int from_id = int(g[from].size());
        int to_id = int(g[to].size());
        if (from == to) to_id++;
        g[from].push_back(_edge{to, to_id, cap});
        g[to].push_back(_edge{from, from_id, 0});
        return m;
    }
 
    struct edge {
        int from, to;
        Cap cap, flow;
    };
 
    edge get_edge(int i) {
        int m = int(pos.size());
        assert(0 <= i && i < m);
        auto _e = g[pos[i].first][pos[i].second];
        auto _re = g[_e.to][_e.rev];
        return edge{pos[i].first, _e.to, _e.cap + _re.cap, _re.cap};
    }
    std::vector<edge> edges() {
        int m = int(pos.size());
        std::vector<edge> result;
        for (int i = 0; i < m; i++) {
            result.push_back(get_edge(i));
        }
        return result;
    }
    void change_edge(int i, Cap new_cap, Cap new_flow) {
        int m = int(pos.size());
        assert(0 <= i && i < m);
        assert(0 <= new_flow && new_flow <= new_cap);
        auto& _e = g[pos[i].first][pos[i].second];
        auto& _re = g[_e.to][_e.rev];
        _e.cap = new_cap - new_flow;
        _re.cap = new_flow;
    }
 
    Cap flow(int s, int t) {
        return flow(s, t, std::numeric_limits<Cap>::max());
    }
    Cap flow(int s, int t, Cap flow_limit) {
        assert(0 <= s && s < _n);
        assert(0 <= t && t < _n);
        assert(s != t);
 
        std::vector<int> level(_n), iter(_n);
        internal::simple_queue<int> que;
 
        auto bfs = [&]() {
            std::fill(level.begin(), level.end(), -1);
            level[s] = 0;
            que.clear();
            que.push(s);
            while (!que.empty()) {
                int v = que.front();
                que.pop();
                for (auto e : g[v]) {
                    if (e.cap == 0 || level[e.to] >= 0) continue;
                    level[e.to] = level[v] + 1;
                    if (e.to == t) return;
                    que.push(e.to);
                }
            }
        };
        auto dfs = [&](auto self, int v, Cap up) {
            if (v == s) return up;
            Cap res = 0;
            int level_v = level[v];
            for (int& i = iter[v]; i < int(g[v].size()); i++) {
                _edge& e = g[v][i];
                if (level_v <= level[e.to] || g[e.to][e.rev].cap == 0) continue;
                Cap d =
                    self(self, e.to, std::min(up - res, g[e.to][e.rev].cap));
                if (d <= 0) continue;
                g[v][i].cap += d;
                g[e.to][e.rev].cap -= d;
                res += d;
                if (res == up) return res;
            }
            level[v] = _n;
            return res;
        };
 
        Cap flow = 0;
        while (flow < flow_limit) {
            bfs();
            if (level[t] == -1) break;
            std::fill(iter.begin(), iter.end(), 0);
            Cap f = dfs(dfs, t, flow_limit - flow);
            if (!f) break;
            flow += f;
        }
        return flow;
    }
 
    std::vector<bool> min_cut(int s) {
        std::vector<bool> visited(_n);
        internal::simple_queue<int> que;
        que.push(s);
        while (!que.empty()) {
            int p = que.front();
            que.pop();
            visited[p] = true;
            for (auto e : g[p]) {
                if (e.cap && !visited[e.to]) {
                    visited[e.to] = true;
                    que.push(e.to);
                }
            }
        }
        return visited;
    }
 
  private:
    int _n;
    struct _edge {
        int to, rev;
        Cap cap;
    };
    std::vector<std::pair<int, int>> pos;
    std::vector<std::vector<_edge>> g;
};
 
}
using namespace atcoder;
using namespace std;
inline int read(){
   int s=0,w=1;
   char ch=getchar();
   while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
   while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
   return s*w;
}
string curtoken,a[1<<20];
int len;
bool readtoken()
{
	curtoken="";
	char c=getchar();
	while(!islower(c)&&!isupper(c)) c=getchar();
	while(1)
	{
		if(islower(c)||isupper(c)) curtoken+=c;
		else if(c==' ')
		{
			a[++len]=curtoken;
			return 1;
		}
		else
		{
			a[++len]=curtoken;
			return 0;
		}c=getchar();
	}
}
int n=read(),m=n+2;
mcf_graph<int,int> G(1e6);
map<string,int> mp;
int S=n+1,T=n+2;
string arr[100003];
int tr[1<<23][52],dep[1<<23],fa[1<<23],cnt;
char fr[1<<23];
string ans[1003];
int instrans(int x,char c)
{
	int o=c-'a';
	if(isupper(c)) o=c-'A'+26;
	if(!tr[x][o]) tr[x][o]=++cnt,fr[cnt]=c,
	dep[cnt]=dep[x]+1,fa[cnt]=x;
	return tr[x][o];
}
int Hash(int pt)
{
	string s;
	while(pt>1)
	{
		s.push_back(fr[pt]);
		pt=fa[pt];
	}
	reverse(s.begin(),s.end());
	if(!mp.count(s))
	{
		mp[s]=++m;
		arr[m]=s;
		G.add_edge(m,T,1,s.size());
	}
	return mp[s];
}
vector<int> nodes[133][258];
int last[1<<23],curver;
signed main()
{
	for(int i=1; i<=n; ++i)
		G.add_edge(S,i,1,0);
	// puts("QAQ");
	for(int id=1; id<=n; ++id)
	{
		for(int j=1; j<=cnt; ++j)
			memset(tr[j],0,sizeof(tr[j]));
		cnt=1;
		// sz=0;
		len=0;
		while(readtoken());
		for(int j=1; j<=len+1; ++j)
			for(int k=0; k<=256; ++k)
				nodes[j][k].clear();
		nodes[1][0].push_back(1);
		for(int j=1; j<=len+1; ++j)
		{
			++curver;
			int remain=128;
			for(int k=0; remain&&k<=256; ++k)
			{
				for(int l:nodes[j][k])
				{
					// printf("node %d\n",l);
					int o=l;
					if(last[o]!=curver)
					{
						last[o]=curver;
					}
					else continue;
					if(j==len+1)
					{
						// printf("%d %d\n",id,o);
						G.add_edge(id,Hash(o),1,0);
					}
					else{
					for(char ii:a[j])
					{
						// i.cur.push_back(ii);
						o=instrans(o,ii);
						if(dep[o]<=256)
							nodes[j+1][dep[o]].push_back(o);
						else break;
					}}
					--remain;
					if(remain==0) break;
				}
			}
		}
	}
	// return 0;
	// printf("%d\n",m);
	auto [flow,cost]=G.flow(S,T);
	// printf("%d\n",cost);
	// printf("%d\n",flow);
	if(flow!=n) puts("no solution"),exit(0);
	auto it=G.edges();
	for(auto i:it)
		if(i.to>n+2&&i.flow)
			ans[i.from]=arr[i.to];
	for(int i=1; i<=n; ++i)
		cout<<ans[i]<<endl;
	return 0;
}

详细

Test #1:

score: 100
Accepted
time: 24ms
memory: 59112kb

input:

5
automated teller machine
active teller machine
active trouble maker
always telling misinformation
American Teller Machinery

output:

autm
actm
atrm
atm
ATM

result:

ok len=18

Test #2:

score: 0
Accepted
time: 31ms
memory: 57708kb

input:

5
Forest Conservation Committee Forum
Fuming Corruption Collusion Federation
Fulsome Cash Concealment Foundation
Funky Crony Capitalism Facilitator
Funny Cocky Cocky Funny

output:

FoCCF
FuCCF
FCaCF
FCrCF
FCCF

result:

ok len=24

Test #3:

score: 0
Accepted
time: 16ms
memory: 58208kb

input:

3
A AA
AA A
A A A

output:

no solution

result:

ok len=-1

Test #4:

score: 0
Accepted
time: 16ms
memory: 58184kb

input:

2
QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnmertyuiop
Q W E R T Y U I O P A S D F G H J K L Z X C V B N M q w e r t y u i o p a s d f g h j k l z x c v b n m j k l z x c v b n m

output:

Q
QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnmjklzxcvbnm

result:

ok len=63

Test #5:

score: 0
Accepted
time: 49ms
memory: 58308kb

input:

10
aaa aaa aaa aaa aaa aaa
aab aaa aaa aaa aaa aaa
aaa aab aaa aaa aaa aaa
aab aab aaa aaa aaa aaa
a a a a a a
ab ab a a a a a a
ab ab b a a a a a a
aw a a a a a
az az a a a a
az a a a a a

output:

aaaaaaaaa
aabaaaaa
aaabaaaa
aaaaaaa
aaaaaa
aaaaaaaa
aabaaaaaa
awaaaaa
aazaaaa
azaaaaa

result:

ok len=76

Test #6:

score: 0
Accepted
time: 1536ms
memory: 69164kb

input:

128
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...

output:

zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...

result:

ok len=24512

Test #7:

score: 0
Accepted
time: 1581ms
memory: 74320kb

input:

128
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaae aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
cccccccccccccccccccccccccccccccccccccccccc...

result:

ok len=16534

Test #8:

score: 0
Accepted
time: 2082ms
memory: 71616kb

input:

128
zAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz...

output:

zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
zAzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
zAAzzzzzzzzz...

result:

ok len=17624

Test #9:

score: 0
Accepted
time: 644ms
memory: 71852kb

input:

128
abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a...

output:

abaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
bcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
cdcccccccccccccccccccccccccccccccccccccc...

result:

ok len=16460

Test #10:

score: 0
Accepted
time: 1819ms
memory: 79656kb

input:

128
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccc...

result:

ok len=16384

Test #11:

score: 0
Accepted
time: 261ms
memory: 279684kb

input:

10
AoenrfWTxhAiSipaV cJGloMoCBombqBsVuorNWL gqrmsIZGthdBIvNPWjTGgssBfbctzPCvCmMJWN MDYvQBZCaCmwSFnvQOmolkTmwWgysKuVmByj EOwjzBEgECXizqAZukRFAxdvrRhsGcIzQsFUMcXw mVNxPkaPPKUZEpswrhOqJerzhvfVwcNoDceNZPaskxTEhlGCMIoSqvAg JCPAAkYZoGOxpFNCj tsNvJHyeVCZqOHKzVsLoMnprENEmGSSxFGDDOafIIMVAbUtUIkAqmnrXUnWWfkAl...

output:

AcgMEmJtQnptFcoksenMLQXoWgmMEMuxBJYTcICgaVNaTfoyuAvDOAnedNDDPPPwIGaDOnjIlUvbJTVVQFLk
HvApbVGYRBPuNjNkipYlWgO
ScgzHNitvtRoLuUisITjuWCLGelWKqYoIAnAmIWTLOeMVHndqytXTd
UBSuhtoimhfhdKivdyCqJxSbtnocRCEKicArQJKnRagqrJfNHY
WqlPqHsSnpHcIfqCalIrqubIpBXqTVRBOYYQqRCQqJzyHRbbSCLzxsXOzNxSxSXcPhfHkNKClKWBJbg
iLqfr...

result:

ok len=660

Test #12:

score: 0
Accepted
time: 1381ms
memory: 301740kb

input:

64
AQLPmEKRHtLKaVeVgUBkYfECFrvhbsXorapjINwkXhyCmkexRIVAZTsXaOihheHjstls AiIegrwbTMbBFdDQHGMgyOahunXRrySnKEmfKXQkpWdtNpGdgdBtPGfdcdnUvEqkfmvmSRzevtZkhPzjhDhTVLQCbaozNEXlqUgHeRshchY SFwbzOhRAEybYCGswuldoWkKloHghqiDybxtJPdzAWjmqxw mcRhokiMnxgAucSnasFcEXpZdEGEGzEGaEBAfGNEQAgQSTFKrMvxoUZTDKQMHksaciHoYXih...

output:

AASmGWIMEJjHHnPlYRcjfOMPuKTjbyRxHmnMcJSXFigHUqxClyINhlMPJgLAZRXFEOGWcCIQvqaYBIhOPkeUVWKHJYow
CJenkhWcPeucbfOFBHxSdYqLgftApMsctvFlfKkZmavIfqWYNZpZKJKYPwMSuvaSubelMSQKFIymAZoMLIOqoHGlIbOAp
CejoeafHpVdTXKhgDGCAFivwKoSTwwBUDBdXYMWNlUBUttHXemMOHwlBiaqRUwYTIPqJvpowUFTSkqyAywInGlWgMfYXuFrw
DkivKkaYITyXOOVF...

result:

ok len=3658

Test #13:

score: 0
Accepted
time: 4619ms
memory: 304328kb

input:

128
kfiaaudafulirmameczaaaaaaaaaaaaaaaaaaaaaaaaagaaaajaaaaaalaaqoaaa f i a a u d a f u l i r m a m e c z a a a a a a a a a a a a a a a a a a a a a a a a a g a a a a j a a a a a a l a a q o a a a
aaaoqaalaaaaaajaaaagaaaaaaaaaaaaaaaaaaaaaaaaazcemamrilufaduaaifk a a o q a a l a a a a a a j a a a a g a ...

output:

kfiaaudafulirmameczaaaaaaaaaaaaaaaaaaaaaaaaagaaaajaaaaaalaaqoaaa
aaaoqaalaaaaaajaaaagaaaaaaaaaaaaaaaaaaaaaaaaazcemamrilufaduaaifk
aoajcnjaaicamaaaahyaaaaaaaaaaaaaaaaaaaaaaaaabaazasvaeaavcaaaajak
kajaaaacvaaeavsazaabaaaaaaaaaaaaaaaaaaaaaaaaayhaaaamaciaajncjaoa
akkggaaaaumaiwaqawgaaaaaaaaaaaaaaaaaaaaa...

result:

ok len=14640

Test #14:

score: 0
Accepted
time: 815ms
memory: 67952kb

input:

128
a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaZ a aaaaaaaaaaaaaaaZ aaaaaaaaaaaaab aaaaaaaaaaaaab aaaaaaaaaaaaaaaZ aaaaaaaaaaaaab a aaaaaaaaaaaaaz aaaaaaaaaaaaaaaZ aaaaaaaaaaaaab aaaaaaaaaaaaaz a aaaaaaaaaaaaab aaaaaaaaaaa...

output:

aaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaazaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaa...

result:

ok len=17957

Test #15:

score: 0
Accepted
time: 1093ms
memory: 74056kb

input:

128
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZz Z ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZb ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZWZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZbZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZQQZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZbZZZZZ ZZZZZ...

output:

ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZzZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZzZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ...

result:

ok len=20417

Test #16:

score: 0
Accepted
time: 1098ms
memory: 75176kb

input:

128
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZWZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZb ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZQQZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZQQZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZb ZZZZZZZZZ...

output:

ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZzZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZzZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ...

result:

ok len=20417

Test #17:

score: 0
Accepted
time: 561ms
memory: 57624kb

input:

128
p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p
p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p
p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p p ...

output:

pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp
ppppppppppppppppppppppppppppppppppppppppppppp
ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp
ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp
p...

result:

ok len=8256

Test #18:

score: 0
Accepted
time: 299ms
memory: 68048kb

input:

64
Hash Objects
The following values are provided as constant attributes of the hash objects returned by the constructors
hash digest size
The size of the resulting hash in bytes
hash block size
The internal block size of the hash algorithm in bytes
A hash object has the following attributes
hash na...

output:

HO
Tfvapacaothorbtc
hds
Tsotrhib
hbs
Tibsothaib
Ahohtfa
hn
Tcnothalaasaaptntcahott
CivTnahbpiCsiibuPwnfssmneosp
Ahohtfm
hud
UthowtbloRcaetascwtcoatamuamubietmuab
hd
RtdotdpttumsfTiaboosdswmcbitwrft
hah
LdetdiraasoodlcohdTmbutetvsieoonbe
hc
RaccothoTcbutectdodsacis
Svld
hsduT
TsasapvldwlibutobosAstdm...

result:

ok len=968

Test #19:

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

input:

62
Invocation
Manage access Packages Issues Invocations Solution files Stresses Tests Validator Checker Files Statement General info View Problems Contest
Back to invocations
Rejudge
Set solutions tags
n cpp n break cpp n log cpp n log removeset cpp n noclear cpp n spfa cpp n spfa py py n spfa pypy ...

output:

I
MaPIISfSTVCFSGiVPC
Bti
Re
Sst
ncnbcnlcnlrcnncnscnsppnsppnsvcncnsc
OOOOOOOOOOO
OOOOOOOOWOO
OOOOOOTOOTT
OOOOOOTOOOO
OOOOOOTOWTT
OOOOOOTOWOO
pt
mmMmMmMmMmMmMmMmMmMmMmM
Cwasstspawmtmahwlbc
IsctehoTosgTagOidTtccihwoc
Ctol
nmvhmvh
cbn
vn
vp
nmivhmtavdvnhmavoalotfti
nmvhmtavdvnhmavoalotfti
Ffhmttiatwhtsf...

result:

ok len=436

Test #20:

score: 0
Accepted
time: 302ms
memory: 62616kb

input:

64
Resource Files
New File Add Files
Name Length Modified
Actions
Delete Download Edit View
Advanced
gen atm cpp
Rename
kB Delete Download Edit View
olymp sty
problem tex
statements ftl
testlib h
Auto update
You can place here h files or java files These files will be copied to compilation directory...

output:

RF
NFAF
NLM
Ac
DDEV
Ad
gac
R
kDDEV
os
pt
sf
th
Au
YcphhfojfTfwbctcddtcpoesf
SF
NLLM
DDEVL
vcv
ccc
gabpg
geapg
gaaapg
gapg
gdpg
glpg
grcg
gspg
gzpg
gdp
grp
UffgvaciynIisrtutii
Dnushusti
Eog
Ycrmagh
A
Nf
Uatuafywitpr
Vc
hpccpXIfa
Afsgabp
Afsgabpd
ADfsgap
ADfsgapd
Afsgap
Afsgapd
ADfsgdp
ADfsgdpd
Afsgdp...

result:

ok len=325

Test #21:

score: 0
Accepted
time: 322ms
memory: 77984kb

input:

63
Major Arcana
Article
Talk
Read
Edit
View history
Tools
From Wikipedia the free encyclopedia
A fan with cards an index and their box
The Major Arcana cards redesigned by Roberto Viesi
The Major Arcana are the named or numbered cards in a cartomantic tarot pack the name being originally given by oc...

output:

MA
A
Ta
R
Ed
Vh
To
FWtfe
Afwcaiatb
TMAcrbRV
TMAatnonciactptnbogbotttcoantpufpcgTausciascptnfticpptintucitFTninubtcgp
PtttctcwsufpgatFatwspoascpufgagTmhbaacsattbbtttohnmomiWddfcgtcgtcsaptaadftrctscwakboatMA
TtMaMAauitoadaotdaipETaowJBPwutnPC
SMDwttFatcohsaoemmoieiitIcottcwiwiTosbteittcwACdGaScaFpeoTi...

result:

ok len=2094

Test #22:

score: 0
Accepted
time: 237ms
memory: 59388kb

input:

54
include bits stdc h
include testlib h
using namespace std
int n
vector vector string a
string strip const string s
auto l s begin
while l s end l l
auto r s end
while r l prev r r
return s substr l s begin r l
inline int readAndCheckAnswer InStream in
string first strip in readLine A Za z first l...

output:

ibsh
ith
uns
in
vvsa
sscss
alsb
wlsell
arse
wrlprr
rsslsbrl
iirIi
sfsirAZzfl
ifns
r
ieffl
vsaf
fiiini
apbirAZzp
it
ssa
sip
fawai
sis
fajp
fikjkaiskwsk
iaijkwk
sijk
e
b
pms
iepcaisaiinaaftsics
ieacaiambu
aiai
tais
rt
imiaca
raa
nirir
ssir
vsw
st
wst
wpbt
apbmw
ijra
ipro
ijp
qwJhtabphn
qfPhtabjhn
ipj
...

result:

ok len=270

Test #23:

score: 0
Accepted
time: 291ms
memory: 62636kb

input:

64
present me some phrases that shares the same initialism as much as possible as long as possible
ChatGPT
Creating long phrases that share the same initialism can be quite the puzzle Heres a list featuring the initialism S T A R T to give you an idea of how diverse the phrases can be
Seek Treasure ...

output:

pmsptstsiamapalap
C
ClptstsicbqtpHalftiSTARTtgyaiohdtpcb
SeeTART
STARTi
SysTART
SoTART
ShaTART
SavTART
STAzRT
START
StTART
STARaT
Tpsdtfthafstasase
ctgm
HamputiSTART
SeTART
SiTART
ShTART
SThART
SToART
STARTo
STApRT
SyTART
STaART
STARTe
Epbotcosswiapjabsoace
STiART
STeART
SpTART
SaTART
STAtRT
STrART
...

result:

ok len=522

Test #24:

score: 0
Accepted
time: 593ms
memory: 70732kb

input:

128
You are given a string consisting of characters and or
You have to paint every character of this string into one of two colors red or blue
If you paint the i th character red you get r i coins
If you paint it blue you get b i coins
After coloring the string you remove every blue character from i...

output:

Yagascocao
Yhtpecotsiootcrob
Iyptitcrygric
Iypibygbic
Actsyrebcfiactnoiitrsi
e
tnopocsttlcitpiatrcitpi
Feiyhtpc
Witmnocyce
Lscaaaonnnifitfch
aloftnxx
xkaita
ceotadbamki
aiailkfeiin
Yagnxak
Ytitctnofaoln
Stacblpim
MaBapacg
Echtpaavaadv
Acsbactitaosisgttdot
Mhnctitothaavomaiaadvomai
Bhmctjtothaavombja...

result:

ok len=2069

Test #25:

score: 0
Accepted
time: 602ms
memory: 65276kb

input:

128
An anonymous informant has told you that the array b was obtained as follows initially there existed an array a a ldots a n after which the following two component operation was performed k times
A fixed point dagger x of the array a was chosen
Then the array a was cyclically shifted to the left...

output:

Aaihtyttabwoafiteaaaalanawtftcowpkt
Afpdxotaawc
Ttaawcsttldext
Aaroksotabblbnwo
Ywtcitwotaicbtoitagtbf
dAnxicafpotaaalanilxlnaaxx
dAclsotaaalanitaalana
Yagartwtravicoasv
Evhanvist
Taaqqott
Tftaacvwtnstvvwsitcsott
Tnvotnvwb
Tstaxttnvoavitsovv
Aaqotnvoaotvitft
TbSilawatnB
OtcotyBwane
Feeidaiikwianni
S...

result:

ok len=1849

Test #26:

score: 0
Accepted
time: 593ms
memory: 67332kb

input:

128
It turns out that Doremy has a special power
She can choose k days and during these days it will not rain
Doremy wants to calculate the maximum number of dry cities after using the special power
The only differences between the two versions of this problem are the constraint on k the time limit ...

output:

ItotDhasp
Scckdadtdiwnr
Dwtctmnodcautsp
Todbttvotpatcokttlatml
Ycmhoiavotpas
Dliarcconcnftn
Twbptdoritnmd
Ititdiwritcitiliri
Acicdiiwnritcitnmd
Scckditevkadtdiwnr
Dliacconcnftnwaiplititc
Icbmaaugwnn
Itaneitg
NDwtmtgc
Tdtscaaebiaji
skiSakgicjcc
wSitsoatntacitsccoeiojaciagc
CDmtgc
Tnijaitscciteapfitj
...

result:

ok len=2054

Test #27:

score: 0
Accepted
time: 568ms
memory: 59168kb

input:

128
Ab
aba
abac
abacaabaca synonyms
abaciscus
abacist
abackaback synonyms
Abaco
abacterial
abactinal
abaculus
abacusabacus synonyms
Abadan
AbaddonAbaddon synonyms
A bad penny always turns up
ab aeterno
abaftabaft synonyms
Abagtha
Abailard
Abakan
abaloneabalone synonyms
abamp
abampere
abandonabandon ...

output:

Ab
aba
abac
abacas
abacis
abaci
abacks
Abac
abacte
abact
abacu
abacs
Abad
Abs
Abpatu
aa
abafs
Abag
Abai
Abak
abals
abamp
abam
abansy
abands
aband
Ahayweh
abans
aban
abapi
abap
AIs
b
asy
abs
asyn
absy
abass
abasi
asyno
abasy
abats
abati
aj
abato
abat
Aba
abas
abax
abay
abb
Abb
abbac
ad
Abbad
Abbai
Ab...

result:

ok len=504

Test #28:

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

input:

105
abele
abelia
Abelian
Abelian group
Abe Lincoln in Illinois
Abel meholah
abelmosk
Abelson
Abenaki
abendabend synonyms
Abeokuta
Abercrombie
Aberdare
Aberdeen
Aberdeen Angus
Aberdeen Proving Ground
Aberdeenshire
Aberdeen terrier
aberdevine
Aberdonian
Aberfan
Abernathy
abernethy
aberrantaberrant syn...

output:

abele
abeli
Abeli
Ag
ALiI
Am
abel
Abel
Aben
abens
Abeo
Aberc
Ab
Abe
AA
APG
Aber
At
aberd
Aberd
Aberf
Abern
aber
asyno
abers
Abery
aes
abe
abesy
abet
abets
ae
abeys
abes
abf
ABFM
AB
abhe
AP
abh
absyn
abhsy
abhos
abhs
Abia
Abiat
Abib
abid
abisy
abbbs
abids
Abid
Abie
abien
bi
abie
aba
abigs
Abih
Abil
a...

result:

ok len=410

Test #29:

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

input:

128
Saar
Saarbrcken
SAARC
Saaremaa
Saarinen
Saarland
SaaS
Saavedra Lamas
Sab
Saba
Sabadell
sabadilla
Sabaean
Sabah
sabalo
Sabaoth
Sabata
Sabatier
Sabatini
sabaton
Sabattier effect
sabayon
Sabbat
Sabbatarian
SabbathSabbath synonyms
Sabbath school
Sabbatical
sabbatical yearsabbatical year synonyms
Sab...

output:

Saar
Saarb
SAA
Saare
Saa
Saarl
SaaS
SaL
Sab
Saba
Sabad
sabad
Sabae
Sabah
sabal
Sabao
Sabata
Sabat
Sabati
sabat
Se
saba
S
Sa
Sas
Ss
Sabba
syys
Sabb
SA
Sabea
Sabe
sabes
sabe
sarrs
ssa
st
satt
sabi
Sabi
Sabin
SL
Sabini
Svvs
Sabir
sabk
sabls
san
sabl
SIp
sabo
sasyn
sabsy
sabos
sabr
sabrs
sr
sab
stt
Sabr...

result:

ok len=555

Test #30:

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

input:

128
safari suit
Safavid
safesafe synonyms
safe and soundsafe and sound synonyms
safe area
safe as houses
safe blower
safe breaker
safe conductsafe conduct synonyms
safecrackersafecracker synonyms
safe deposit
safe deposit boxsafe deposit box synonyms
safeguardsafeguard synonyms
safe harborsafe harbo...

output:

sasu
Safa
ssy
sasass
saa
saah
sab
sbr
saccs
ssyn
sad
sadbdbs
safs
sahhs
shhs
sasyn
safe
safsy
sap
sse
sasp
ssur
safes
sbbs
sca
sac
sch
sci
sccs
sd
sdbdbs
sfa
sfi
sfu
sf
sggs
sho
sints
siis
SI
slls
sal
sl
sam
smms
snns
spps
srrs
ssq
sat
svvs
saw
sa
saff
so
saffs
Saf
SR
SAf
saf
SAD
safr
saft
sagss
ssy...

result:

ok len=443

Test #31:

score: 0
Accepted
time: 516ms
memory: 58096kb

input:

115
sage cock
sage Derby
sage green
sage grouse
sage hen
sagelysagely synonyms
sagenite
sage sparrow
sage thrasher
saggar
saggersagger synonyms
sagging moment
saggysaggy synonyms
Saghalien
Sag Harbor
Saginaw
Saginaw Bay
Sagitta
sagittalsagittal synonyms
sagittal suture
Sagittarian
SagittariusSagitta...

output:

sc
sD
sagr
sgr
she
sages
sage
ssp
st
sagg
sagsy
sm
saggs
Sagh
SH
Sagin
SBa
Sagit
sagis
sasu
Sagi
Sas
sagi
sags
sago
sg
sap
sr
S
sag
Sagu
SeH
Sag
sw
Sa
Ss
Sah
Saha
Sahe
Sat
sah
SaA
SAH
saic
saids
Said
saig
Sai
ST
sails
sail
sailb
ssyn
scttw
sasy
saile
sailf
sais
sbbs
sl
ssh
si
sailm
sas
sh
sailo
ssc
...

result:

ok len=379

Test #32:

score: 0
Accepted
time: 590ms
memory: 62632kb

input:

128
AAAzzzzzAzzzAzzAzAzzAzzAAzzzzAzAzzAAAAzzAAzAAzAAAAzAzzzzzAAAAzAAAzzzAzzAAzAAzzAAAAAzzzzzzAzzAAzzzzzAAAAzzzAzAAzzzAAzzzAAAAzAAzzA
AzAAzAzAAzAAzzzzAAzzzAzzzAzzAAAzzzAAAzzzzAzAAzzzAzAzAzAzzzzAAAzAzzzAAzzzzzzzzzAAzzzzzzAAAzzzzAzzAzAzAAzAzzzzzAzAzzAzzAzzAAzzAAzA
AAzAzzzzAzAAAzAAzAAzAzAzAAzAAzzAzzzAAz...

output:

AAAzzzz
AzAAzA
AAzAzzz
z
AAzAAAz
zAAzAAA
zAAzzzz
AAAzzAz
zAAAzAA
zzzzzzz
zAAzAA
zAAAAzz
AAzzAz
AAAzAzA
zzAzzzz
zzAzzA
zAzzA
zzzzAzz
zAzAzz
zAAAAzA
AAzzzAz
zzAAzz
AAzAAAA
AAzA
AzAAAz
A
zzzzzzA
zAzzzA
zAzzAA
AAzzzA
zAAAzzz
Azzz
zAzzAz
zAAAzAz
zAzzzz
AzzzAA
zzzAAz
zzAzAz
zAzA
Azz
Azzzz
AAA
zzzz
zAzzz
z...

result:

ok len=673

Test #33:

score: 0
Accepted
time: 589ms
memory: 64148kb

input:

128
zAzzAAAAAzzAAAzAAAzAzzzAAzzzAzzzAzAzzAAzzAzAAzAzAzAAAAAzzzzzAAAAzzzzzAAAAzzzzzAAzzzAzAzAzzzAAAzAAAAzzzzAzAzzzzAzAzAAAzAzzzzAzAAA
zzAzzzAAzzAAAzAAAzzAzAAzAAzzzAAAAzzzzAzzzAzAzzzAAAAAAAzzAzzzAzzAAzzAAAAAzAzzzzzAzAAAAAzzAAzzAzAAzzAAAzAzzAzAAAAAAzAzAzzzAAAzAzzA
AzzAAAAzzAAzzAAzzAAAAzAzzzzzAAAzzAzzzA...

output:

zAzzAAA
zzAzzzA
AzzAAAA
AAAAzA
zAAAzzA
zAAAAzz
AAAzAAA
zAAAA
AzAzAAA
zAzAAA
AzAzAzz
AzAzA
zzAAzAA
zAzzA
AAzzzz
zzzA
AzzzzzA
AAzAAA
AzAzAz
AAAAAAz
zAAAAz
AzzzzA
zAzAA
zAA
zAzzAA
zzzzzz
AAAAzzA
zzAzAz
zzzAz
zzAzAA
zAzAz
zAAzAz
AAAzAAz
AzzAAA
zAAAzA
zAzzzA
AAzzA
zAzzAz
Az
zAzzzz
AAzAzz
zzAzA
zAAAzz
AAz...

result:

ok len=667

Test #34:

score: -100
Time Limit Exceeded

input:

128
riJvmelARapZOVXwMfUdCzkwcdcFjGKiqKQwFwiXFPFIjlUnHZFetAENZXLpvEWaOZRVAeFBjLaCKvnszYuPa riJvmelARapZOVXwMfUdCzkwcdcFjGKiqKQwFwiXFPFIjlUnHZFetAENZXLpvEWaOZRVAeFBjLaCKvnszYuPa riJvmelARapZOVXwMfUdCzkwcdcFjGKiqKQwFwiXFPFIjlUnHZFetAENZXLpvEWaOZRVAeFBjLaCKvnszYuPa riJvmelARapZOVXwMfUdCzkwcdcFjGKiqKQwFw...

output:

rrirrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
rrrrrrrrrrirrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
rrrrrrrrrrrrrrirrrrrrrrrrrrrrrrrrrrrrrrr...

result: