QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#294952#4834. TrijectionForever_Young#AC ✓39ms4580kbC++1710.5kb2023-12-30 17:40:062023-12-30 17:40:07

Judging History

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

  • [2023-12-30 17:40:07]
  • 评测
  • 测评结果:AC
  • 用时:39ms
  • 内存:4580kb
  • [2023-12-30 17:40:06]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
#define pb push_back
#define all(x) ((x).begin()), ((x).end())
typedef long long LL;
mt19937 gene(233);
int N = 0;
LL dperm[77][77];
typedef pair<int, int> pii;

#define pb push_back
#define eb emplace_back
#define all(x) (x).begin(),(x).end()
#define fi first
#define se second
#define SZ(x) ((int)(x).size())
typedef vector<int> VI;
typedef basic_string<int> BI;
typedef long long ll;
typedef pair<int,int> PII;
typedef double db;
mt19937_64 mrand(1234); 
const ll mod=1000000007;
int rnd(int x) { return mrand() % x;}
ll powmod(ll a,ll b) {ll res=1;a%=mod; assert(b>=0); for(;b;b>>=1){if(b&1)res=res*a%mod;a=a*a%mod;}return res;}
ll gcd(ll a,ll b) { return b?gcd(b,a%b):a;}
// head

namespace subtask1 {

#define mp make_pair
#define rep(i,a,n) for (int i=a;i<n;i++)
#define per(i,a,n) for (int i=n-1;i>=a;i--)
#define SZ(x) ((int)(x).size())
typedef long long ll;
const int N=37;
ll dp[N][N][N];
bool prec;
void precalc() {
	if (prec) return;
	prec=1;
	int n=36;
	for (int i=0;i<n;i++) dp[0][0][i]=1;
	for (int i=1;i<n;i++) {
		for (int l=0;l<n;l++) for (int r=l;r<n;r++) {
			for (int pl=0;pl<n;pl++) for (int pr=pl;pr<n;pr++) if (pl<=l&&pr>=l&&pr<=r)
				dp[i][l][r]+=dp[i-1][pl][pr];
		}
	}
}
ll encode(vector<string> poly) {
	precalc();
	int r=SZ(poly),c=SZ(poly[0]);
	int n=r+c;
	ll ans=0;
	for (int R=1;R<r;R++) {
		int C=n-1-R;
		for (int i=0;i<=C;i++) {
			ans+=dp[R-1][i][C];
		}
	}
	int ql=c-1,qr=c-1;
	for (int i=r-1;i>=0;i--) {
		int p1=c,p2=-1;
		rep(j,0,c) if (poly[r-1-i][j]=='#') p1=min(p1,j),p2=max(p2,j);
		for (int l=0;l<c;l++) for (int r=l;r<c;r++) {
			if (mp(l,r)==mp(p1,p2)) goto fd;
			if (l<=ql&&r>=ql&&r<=qr) {
				ans+=dp[i][l][r];
			}
		}
		fd:;
		ql=p1; qr=p2;
	}
	//printf("%lld\n",ans);
	return ans;
}
vector<string> decode(ll x,int n) {
	precalc();
	int r=0;
	for (int R=1;R<=n;R++) {
		int C=n-R;
		ll s=0;
		for (int i=0;i<=C;i++) s+=dp[R-1][i][C];
		if (x>=s) {
			x-=s;
			r++;
		} else break;
	}
	++r;
	int c=n+1-r;
	vector poly(r,string(c,'.'));
	int ql=c-1,qr=c-1;
	for (int i=r-1;i>=0;i--) {
		int p1=-1,p2=-1;
		for (int l=0;l<c;l++) for (int r=l;r<c;r++) {
			if (l<=ql&&r>=ql&&r<=qr) {
				if (dp[i][l][r]<=x) x-=dp[i][l][r];
				else {
					p1=l;p2=r;
					goto fd;
				}
			}
		}
		fd:;
		assert(p1>=0);
		rep(j,p1,p2+1) poly[r-1-i][j]='#';
		ql=p1; qr=p2;
	}
	//for (int i=0;i<r;i++) {
	//	cerr<<poly[i]<<"\n";
	//}
	return poly;
}

}
#undef mp
LL encodepoly() {
    using namespace subtask1;
    int n, m;
    cin >> n >> m;
    vector<string> vec;
    for(int i = 0; i < n; i++) {
        string s;
        cin >> s;
        vec.pb(s);
    }
    return encode(vec);
}

void decodepoly(LL x) {
    using namespace subtask1;
    vector<string> vec = decode(x, ::N);
    printf("poly\n%d %d\n", vec.size(), vec[0].size());
    for(auto t : vec) {
        printf("%s\n", t.c_str());
    }
}

namespace sub3 {

    map<pii, int> mp;
    vector<array<int, 3> > tr;
    vector<vector<int> > e;
    vector<int> q;
    vector<array<int, 3> > decomp;
}
void dfs(int v, int fa) {
    using namespace sub3;
    q.pb(1);
    int ls = -1, rs = -1;
    for(int y : e[v]) {
        if(y == fa) continue;
        int isleft = false;
        for(int d = 0; d < 3; d++) {
            if(tr[y][d] == tr[v][0]) {
                isleft = true;
                int sum = tr[y][0] + tr[y][1] + tr[y][2];
                tr[y][0] = tr[v][0];
                tr[y][1] = tr[v][2];
                tr[y][2] = sum - tr[y][0] - tr[y][1];
                break;
            }
        }
        if(isleft) {
            ls = y;
        }else {
            int sum = tr[y][0] + tr[y][1] + tr[y][2];
            tr[y][0] = tr[v][2];
            tr[y][1] = tr[v][1];
            tr[y][2] = sum - tr[y][0] - tr[y][1];
            rs = y;
        }

    }

    if(ls != -1) {
        dfs(ls, v);
    }
    q.pb(-1);
    if(rs != -1) {
        dfs(rs, v);
    }
}
LL encodetriang() {
    using namespace sub3;
    int n = N + 2;
    int rt = -1;
    mp.clear();
    tr.resize(n - 2);
    e.clear();
    e.resize(n - 2);
    q.clear();
    for(int i = 0; i < n - 2; i++) {
        for(int d = 0; d < 3; d++) {
            scanf("%d", &tr[i][d]);
            tr[i][d]--;
        }
        if(tr[i][0] == 0 && tr[i][1] == 1) {
            rt = i;
        }
        for(int d = 0; d < 3; d++) {
            int x = tr[i][d], y = tr[i][(d + 1) % 3];
            if(x > y) swap(x, y);
            //printf("%d %d\n", x, y);
            pii p{x, y};
            if(mp.count(p)) {
                e[mp[p]].pb(i);
                e[i].pb(mp[p]);
                //printf("%d->%d\n", i, mp[p]);
                mp.erase(p);
            }else {
                mp[p] = i;
            }
        }
    }
    dfs(rt, -1);
    //for(int i = 0; i < 2 * n - 4; i++) {
    //    printf("%c", q[i] == 1 ? '(' : ')');
    //}
    LL res = 0;
    int cur = 0;
    for(int i = 2 * n - 4; i >= 1; i--) {
        if(q[i - 1] == -1) {
            cur++;
        }else {
            res += dperm[i - 1][cur + 1];
            //printf("%d %d %d\n", i - 1, cur + 1, dperm[i - 1][cur + 1]);
            cur--;
        }
        //cout << cur << endl;
    }
    return res;
}
void dec(int le, int ri, int lx, int rx) {
    using namespace sub3;
    //printf("%d %d %d %d\n", le, ri, lx, rx);
    int n = N + 2;
    int pos = -1, cnt = 0;
    for(int i = le; i < ri; i++) {
        cnt += q[i];
        //printf("%d %d\n", q[le], cnt);
        if(cnt == 0) {
            pos = i;
            break;
        }
    }
    int mx = (lx - (pos - le + 1) / 2 + n) % n;
    //printf("%d %d %d\n", lx, rx, mx);
    decomp.pb({lx, rx, mx});
    if(pos - le > 2) {
        dec(le + 1, pos, lx, mx);
    }
    if(pos != ri - 1) {
        dec(pos + 1, ri, mx, rx);
    }
}
void decodetriang(LL x) {
    using namespace sub3;
    int n = N + 2;
    int cur = 0;
    for(int i = 2 * n - 4; i >= 1; i--) {
        //cout << x << ' ' << dperm[i - 1][cur + 1] << endl;
        if(x < dperm[i - 1][cur + 1]) {
            q.push_back(-1);
            cur++;
        }else{
            x -= dperm[i - 1][cur + 1];
            q.push_back(1);
            cur--;
        }
    }
    reverse(all(q));
    //for(int i = 0; i < 2 * n - 4; i++) {
    //    printf("%c", q[i] == 1 ? '(' : ')');
    //}
    decomp.clear();
    dec(0, n * 2 - 4, 0, 1);
    for(int i = 0; i < n - 2; i++) {
        sort(all(decomp[i]));
    }
    sort(all(decomp));
    printf("triang\n");
    for(int i = 0; i < n - 2; i++) {
        printf("%d %d %d\n", 1 + decomp[i][0], 1 + decomp[i][1], 1 + decomp[i][2]);
    }
}
LL encodeperm() {
    int n;
    n = N;
    vector<int> p;
    int mx = -1;
    for(int i = 0; i < n; i++) {
        int x;
        scanf("%d", &x);
        p.pb(x);
    }
    vector<int> q;
    int cur = 0;
    for(int i = 0; i < n; i++) {
        if(p[i] > mx) {
            int ge = 1;
            for(int j = i + 1; j < n; j++) {
                ge += p[i] > p[j];
            }
            while(cur < ge) {
                q.pb(1);
                cur++;
            }
            mx = p[i];
            q.pb(-1);
            cur--;
        }else {
            q.pb(-1);
            cur--;
        }
    }
    /*for(int i = 0; i < 2 * n; i++) {
        printf("%c", q[i] == 1 ? '(' : ')');
    }*/
    assert(q.size() == n * 2);
    assert(cur == 0);
    LL res = 0;
    for(int i = 2 * n; i >= 1; i--) {
        if(q[i - 1] == -1) {
            cur++;
        }else {
            res += dperm[i - 1][cur + 1];
            //printf("%d %d %d\n", i - 1, cur + 1, dperm[i - 1][cur + 1]);
            cur--;
        }
        //cout << cur << endl;
    }
    N = n;
    return res;
}
void decodeperm(LL x) {
    int cur = 0;
    int n = N;
    vector<int> q;
    for(int i = 2 * n; i >= 1; i--) {
        //cout << x << ' ' << dperm[i - 1][cur + 1] << endl;
        if(x < dperm[i - 1][cur + 1]) {
            q.push_back(-1);
            cur++;
        }else{
            x -= dperm[i - 1][cur + 1];
            q.push_back(1);
            cur--;
        }
    }
    reverse(all(q));
    vector<int> vst(n + 1);
    vector<int> res;
    /*for(int i = 0; i < 2 * n; i++) {
        printf("%c", q[i] == 1 ? '(' : ')');
    }*/
    for(int i = 0, j; i < 2 * n; i = j) {
        int k;
        for(j = i; j < 2 * n && q[j] == 1; j++) {
            cur++;
        }
        int ord = 0;
        for(int l = 1; l <= n; l++) {
            if(!vst[l]) {
                ord++;
                if(ord == cur) {
                    vst[l] = true;
                    res.pb(l);
                    break;
                }
            }
        }
        
        for(k = j; k < 2 * n && q[k] == -1; k++) {
            cur--;
            if(k != j) {
                for(int l = 1; l <= n; l++ ) {
                    if(!vst[l]) {
                        vst[l] = true;
                        res.pb(l);
                        break;
                    }
                }
            }
        }
        j = k;
    }
    printf("perm\n");
    for(int i = 0; i < n; i++) {
        printf("%d%c", res[i], i == n - 1 ? '\n' : ' ');
    }
}
int main() {
    /*LL x = encodepoly();
    cout << x << endl;
    decodepoly(x);
    return 0;*/
    int t;
    cin >> N >> t;
    cout << N << ' ' << t << endl;
    dperm[0][0] = 1;
    for(int i = 0; i <= 2 * N - 1; i++) {
        for(int j = 0; j <= N && j <= i; j++) {
            if(dperm[i][j] != 0) {
                dperm[i + 1][j + 1] += dperm[i][j];
                if(j - 1 >= 0) {
                    dperm[i + 1][j - 1] += dperm[i][j];
                }
            }
        }
    }
    for(int qq = 0; qq <= t; qq++) {
        string tp;
        cin >> tp;
        if(tp == "poly") {
            LL x = encodepoly();
            if(x % 2 == 0) {
                decodeperm(x);
            } else {
                decodetriang(x - 1);
            }
        } else if(tp == "perm") {
            LL x = encodeperm();
            if(x % 2 == 0) {
                decodepoly(x);
            }else {
                decodetriang(x);
            }
        } else if(tp == "triang") {
            LL x = encodetriang();
            if(x % 2 == 0) {
                decodepoly(x + 1);
            }else {
                decodeperm(x);
            }
        }
    }
}

详细

Test #1:

score: 100
Accepted
time: 21ms
memory: 4508kb

input:

5 4
poly
4 2
.#
##
##
#.
perm
4 1 5 2 3
triang
1 2 4
1 4 5
1 5 7
2 3 4
5 6 7
perm
2 1 3 5 4

output:

5 4
perm
1 2 4 3 5
triang
1 2 3
1 3 4
1 4 6
1 6 7
4 5 6
perm
3 4 1 2 5
poly
3 3
..#
###
##.

input:

5 4
perm
1 2 4 3 5
triang
1 2 3
1 3 4
1 4 6
1 6 7
4 5 6
perm
3 4 1 2 5
poly
3 3
..#
###
##.

output:

5 4
poly
4 2
.#
##
##
#.
perm
4 1 5 2 3
triang
1 2 4
1 4 5
1 5 7
2 3 4
5 6 7
perm
2 1 3 5 4

result:

ok good communication process (4 test cases)

Test #2:

score: 100
Accepted
time: 21ms
memory: 4252kb

input:

2 6
poly
2 1
#
#
poly
1 2
##
perm
2 1
perm
1 2
triang
1 2 3
1 3 4
triang
1 2 4
2 3 4

output:

2 6
triang
1 2 3
1 3 4
perm
2 1
poly
1 2
##
triang
1 2 4
2 3 4
poly
2 1
#
#
perm
1 2

input:

2 6
triang
1 2 3
1 3 4
perm
2 1
poly
1 2
##
triang
1 2 4
2 3 4
poly
2 1
#
#
perm
1 2

output:

2 6
poly
2 1
#
#
poly
1 2
##
perm
2 1
perm
1 2
triang
1 2 3
1 3 4
triang
1 2 4
2 3 4

result:

ok good communication process (6 test cases)

Test #3:

score: 100
Accepted
time: 21ms
memory: 4244kb

input:

4 42
poly
3 2
.#
.#
##
poly
3 2
.#
##
#.
poly
3 2
##
#.
#.
poly
2 3
###
#..
poly
2 3
###
##.
poly
2 3
.##
###
poly
4 1
#
#
#
#
poly
3 2
##
##
#.
poly
1 4
####
poly
3 2
##
##
##
poly
3 2
.#
##
##
poly
2 3
.##
##.
poly
2 3
..#
###
poly
2 3
###
###
perm
1 4 2 3
perm
2 3 4 1
perm
2 4 1 3
perm
2 1 3 4
pe...

output:

4 42
perm
2 1 3 4
perm
2 3 1 4
triang
1 2 6
2 3 6
3 4 5
3 5 6
triang
1 2 3
1 3 4
1 4 5
1 5 6
perm
2 4 1 3
triang
1 2 3
1 3 5
1 5 6
3 4 5
triang
1 2 5
1 5 6
2 3 4
2 4 5
perm
1 2 4 3
perm
4 1 2 3
triang
1 2 6
2 3 5
2 5 6
3 4 5
triang
1 2 4
1 4 6
2 3 4
4 5 6
perm
3 1 4 2
perm
1 3 4 2
triang
1 2 3
1 3 6...

input:

4 42
perm
2 1 3 4
perm
2 3 1 4
triang
1 2 6
2 3 6
3 4 5
3 5 6
triang
1 2 3
1 3 4
1 4 5
1 5 6
perm
2 4 1 3
triang
1 2 3
1 3 5
1 5 6
3 4 5
triang
1 2 5
1 5 6
2 3 4
2 4 5
perm
1 2 4 3
perm
4 1 2 3
triang
1 2 6
2 3 5
2 5 6
3 4 5
triang
1 2 4
1 4 6
2 3 4
4 5 6
perm
3 1 4 2
perm
1 3 4 2
triang
1 2 3
1 3 6...

output:

4 42
poly
3 2
.#
.#
##
poly
3 2
.#
##
#.
poly
3 2
##
#.
#.
poly
2 3
###
#..
poly
2 3
###
##.
poly
2 3
.##
###
poly
4 1
#
#
#
#
poly
3 2
##
##
#.
poly
1 4
####
poly
3 2
##
##
##
poly
3 2
.#
##
##
poly
2 3
.##
##.
poly
2 3
..#
###
poly
2 3
###
###
perm
1 4 2 3
perm
2 3 4 1
perm
2 4 1 3
perm
2 1 3 4
pe...

result:

ok good communication process (42 test cases)

Test #4:

score: 100
Accepted
time: 21ms
memory: 4484kb

input:

5 126
poly
3 3
.##
##.
##.
poly
3 3
..#
.##
##.
poly
3 3
###
###
##.
poly
2 4
.###
###.
poly
3 3
..#
.##
###
poly
4 2
.#
.#
##
#.
poly
2 4
####
####
poly
4 2
.#
##
#.
#.
poly
3 3
###
##.
#..
poly
2 4
####
##..
poly
4 2
##
##
##
##
poly
4 2
##
#.
#.
#.
poly
3 3
.##
.##
###
poly
2 4
..##
###.
poly
4 2...

output:

5 126
perm
3 1 4 5 2
perm
4 1 2 3 5
triang
1 2 3
1 3 5
1 5 6
1 6 7
3 4 5
perm
3 4 5 1 2
triang
1 2 4
1 4 5
1 5 6
1 6 7
2 3 4
perm
2 3 1 4 5
perm
1 5 2 3 4
triang
1 2 7
2 3 4
2 4 7
4 5 6
4 6 7
perm
2 1 5 3 4
perm
3 5 1 2 4
perm
1 3 4 2 5
triang
1 2 4
1 4 7
2 3 4
4 5 7
5 6 7
perm
2 3 1 5 4
perm
1 4 5 ...

input:

5 126
perm
3 1 4 5 2
perm
4 1 2 3 5
triang
1 2 3
1 3 5
1 5 6
1 6 7
3 4 5
perm
3 4 5 1 2
triang
1 2 4
1 4 5
1 5 6
1 6 7
2 3 4
perm
2 3 1 4 5
perm
1 5 2 3 4
triang
1 2 7
2 3 4
2 4 7
4 5 6
4 6 7
perm
2 1 5 3 4
perm
3 5 1 2 4
perm
1 3 4 2 5
triang
1 2 4
1 4 7
2 3 4
4 5 7
5 6 7
perm
2 3 1 5 4
perm
1 4 5 ...

output:

5 126
poly
3 3
.##
##.
##.
poly
3 3
..#
.##
##.
poly
3 3
###
###
##.
poly
2 4
.###
###.
poly
3 3
..#
.##
###
poly
4 2
.#
.#
##
#.
poly
2 4
####
####
poly
4 2
.#
##
#.
#.
poly
3 3
###
##.
#..
poly
2 4
####
##..
poly
4 2
##
##
##
##
poly
4 2
##
#.
#.
#.
poly
3 3
.##
.##
###
poly
2 4
..##
###.
poly
4 2...

result:

ok good communication process (126 test cases)

Test #5:

score: 100
Accepted
time: 22ms
memory: 4252kb

input:

6 396
poly
5 2
.#
.#
.#
##
##
poly
3 4
..##
####
###.
poly
3 4
.###
.##.
##..
poly
4 3
.##
###
###
###
poly
4 3
..#
.##
##.
##.
poly
3 4
.###
.#..
##..
poly
2 5
..###
#####
poly
4 3
..#
###
###
#..
poly
3 4
..##
.###
###.
poly
2 5
.####
###..
poly
3 4
...#
####
####
poly
3 4
####
####
###.
poly
4 3
...

output:

6 396
triang
1 2 6
1 6 8
2 3 4
2 4 5
2 5 6
6 7 8
perm
2 1 3 6 4 5
perm
2 4 1 6 3 5
perm
1 2 4 3 6 5
triang
1 2 7
1 7 8
2 3 4
2 4 7
4 5 7
5 6 7
triang
1 2 3
1 3 6
1 6 7
1 7 8
3 4 6
4 5 6
perm
3 4 6 1 2 5
triang
1 2 8
2 3 4
2 4 8
4 5 8
5 6 7
5 7 8
triang
1 2 3
1 3 5
1 5 8
3 4 5
5 6 8
6 7 8
triang
1 2 ...

input:

6 396
triang
1 2 6
1 6 8
2 3 4
2 4 5
2 5 6
6 7 8
perm
2 1 3 6 4 5
perm
2 4 1 6 3 5
perm
1 2 4 3 6 5
triang
1 2 7
1 7 8
2 3 4
2 4 7
4 5 7
5 6 7
triang
1 2 3
1 3 6
1 6 7
1 7 8
3 4 6
4 5 6
perm
3 4 6 1 2 5
triang
1 2 8
2 3 4
2 4 8
4 5 8
5 6 7
5 7 8
triang
1 2 3
1 3 5
1 5 8
3 4 5
5 6 8
6 7 8
triang
1 2 ...

output:

6 396
poly
5 2
.#
.#
.#
##
##
poly
3 4
..##
####
###.
poly
3 4
.###
.##.
##..
poly
4 3
.##
###
###
###
poly
4 3
..#
.##
##.
##.
poly
3 4
.###
.#..
##..
poly
2 5
..###
#####
poly
4 3
..#
###
###
#..
poly
3 4
..##
.###
###.
poly
2 5
.####
###..
poly
3 4
...#
####
####
poly
3 4
####
####
###.
poly
4 3
...

result:

ok good communication process (396 test cases)

Test #6:

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

input:

8 1000
poly
6 3
..#
..#
###
###
###
###
poly
5 4
.###
.###
.##.
###.
###.
poly
5 4
.###
####
###.
###.
##..
poly
5 4
####
####
####
####
###.
poly
4 5
..###
#####
#####
#####
poly
6 3
###
###
###
###
###
###
poly
4 5
.####
#####
##...
##...
poly
5 4
####
##..
##..
##..
##..
poly
4 5
....#
#####
####...

output:

8 1000
perm
4 1 2 5 6 3 7 8
perm
3 1 5 2 4 7 8 6
perm
3 4 1 6 2 7 8 5
perm
4 1 6 2 3 7 8 5
perm
1 5 2 6 7 8 3 4
triang
1 2 4
1 4 10
2 3 4
4 5 6
4 6 7
4 7 9
4 9 10
7 8 9
triang
1 2 3
1 3 10
3 4 10
4 5 6
4 6 10
6 7 10
7 8 10
8 9 10
triang
1 2 8
1 8 9
1 9 10
2 3 8
3 4 5
3 5 7
3 7 8
5 6 7
triang
1 2 3
1...

input:

8 1000
perm
4 1 2 5 6 3 7 8
perm
3 1 5 2 4 7 8 6
perm
3 4 1 6 2 7 8 5
perm
4 1 6 2 3 7 8 5
perm
1 5 2 6 7 8 3 4
triang
1 2 4
1 4 10
2 3 4
4 5 6
4 6 7
4 7 9
4 9 10
7 8 9
triang
1 2 3
1 3 10
3 4 10
4 5 6
4 6 10
6 7 10
7 8 10
8 9 10
triang
1 2 8
1 8 9
1 9 10
2 3 8
3 4 5
3 5 7
3 7 8
5 6 7
triang
1 2 3
1...

output:

8 1000
poly
6 3
..#
..#
###
###
###
###
poly
5 4
.###
.###
.##.
###.
###.
poly
5 4
.###
####
###.
###.
##..
poly
5 4
####
####
####
####
###.
poly
4 5
..###
#####
#####
#####
poly
6 3
###
###
###
###
###
###
poly
4 5
.####
#####
##...
##...
poly
5 4
####
##..
##..
##..
##..
poly
4 5
....#
#####
####...

result:

ok good communication process (1000 test cases)

Test #7:

score: 100
Accepted
time: 23ms
memory: 4512kb

input:

2 1000
triang
1 2 3
1 3 4
perm
1 2
poly
2 1
#
#
poly
1 2
##
perm
2 1
poly
1 2
##
poly
1 2
##
perm
1 2
perm
2 1
triang
1 2 3
1 3 4
perm
2 1
poly
2 1
#
#
perm
2 1
perm
2 1
poly
1 2
##
perm
1 2
poly
2 1
#
#
poly
1 2
##
triang
1 2 4
2 3 4
triang
1 2 4
2 3 4
perm
2 1
poly
2 1
#
#
triang
1 2 3
1 3 4
poly
...

output:

2 1000
poly
2 1
#
#
triang
1 2 4
2 3 4
triang
1 2 3
1 3 4
perm
2 1
poly
1 2
##
perm
2 1
perm
2 1
triang
1 2 4
2 3 4
poly
1 2
##
poly
2 1
#
#
poly
1 2
##
triang
1 2 3
1 3 4
poly
1 2
##
poly
1 2
##
perm
2 1
triang
1 2 4
2 3 4
triang
1 2 3
1 3 4
perm
2 1
perm
1 2
perm
1 2
poly
1 2
##
triang
1 2 3
1 3 4...

input:

2 1000
poly
2 1
#
#
triang
1 2 4
2 3 4
triang
1 2 3
1 3 4
perm
2 1
poly
1 2
##
perm
2 1
perm
2 1
triang
1 2 4
2 3 4
poly
1 2
##
poly
2 1
#
#
poly
1 2
##
triang
1 2 3
1 3 4
poly
1 2
##
poly
1 2
##
perm
2 1
triang
1 2 4
2 3 4
triang
1 2 3
1 3 4
perm
2 1
perm
1 2
perm
1 2
poly
1 2
##
triang
1 2 3
1 3 4...

output:

2 1000
triang
1 2 3
1 3 4
perm
1 2
poly
2 1
#
#
poly
1 2
##
perm
2 1
poly
1 2
##
poly
1 2
##
perm
1 2
perm
2 1
triang
1 2 3
1 3 4
perm
2 1
poly
2 1
#
#
perm
2 1
perm
2 1
poly
1 2
##
perm
1 2
poly
2 1
#
#
poly
1 2
##
triang
1 2 4
2 3 4
triang
1 2 4
2 3 4
perm
2 1
poly
2 1
#
#
triang
1 2 3
1 3 4
poly
...

result:

ok good communication process (1000 test cases)

Test #8:

score: 100
Accepted
time: 23ms
memory: 4224kb

input:

4 1000
perm
3 1 2 4
triang
1 2 6
2 3 6
3 4 6
4 5 6
poly
2 3
.##
###
perm
3 1 4 2
perm
1 3 4 2
poly
2 3
..#
###
poly
3 2
##
##
##
poly
2 3
###
#..
perm
1 3 2 4
triang
1 2 3
1 3 4
1 4 6
4 5 6
poly
3 2
.#
##
##
poly
4 1
#
#
#
#
perm
2 4 1 3
perm
3 4 1 2
triang
1 2 4
1 4 6
2 3 4
4 5 6
perm
1 3 4 2
poly
...

output:

4 1000
triang
1 2 4
1 4 5
1 5 6
2 3 4
perm
1 4 2 3
triang
1 2 3
1 3 5
1 5 6
3 4 5
poly
2 3
.##
##.
poly
2 3
..#
###
perm
1 3 4 2
triang
1 2 6
2 3 5
2 5 6
3 4 5
triang
1 2 3
1 3 4
1 4 5
1 5 6
triang
1 2 6
2 3 4
2 4 6
4 5 6
perm
3 4 1 2
triang
1 2 4
1 4 6
2 3 4
4 5 6
triang
1 2 5
1 5 6
2 3 4
2 4 5
pol...

input:

4 1000
triang
1 2 4
1 4 5
1 5 6
2 3 4
perm
1 4 2 3
triang
1 2 3
1 3 5
1 5 6
3 4 5
poly
2 3
.##
##.
poly
2 3
..#
###
perm
1 3 4 2
triang
1 2 6
2 3 5
2 5 6
3 4 5
triang
1 2 3
1 3 4
1 4 5
1 5 6
triang
1 2 6
2 3 4
2 4 6
4 5 6
perm
3 4 1 2
triang
1 2 4
1 4 6
2 3 4
4 5 6
triang
1 2 5
1 5 6
2 3 4
2 4 5
pol...

output:

4 1000
perm
3 1 2 4
triang
1 2 6
2 3 6
3 4 6
4 5 6
poly
2 3
.##
###
perm
3 1 4 2
perm
1 3 4 2
poly
2 3
..#
###
poly
3 2
##
##
##
poly
2 3
###
#..
perm
1 3 2 4
triang
1 2 3
1 3 4
1 4 6
4 5 6
poly
3 2
.#
##
##
poly
4 1
#
#
#
#
perm
2 4 1 3
perm
3 4 1 2
triang
1 2 4
1 4 6
2 3 4
4 5 6
perm
1 3 4 2
poly
...

result:

ok good communication process (1000 test cases)

Test #9:

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

input:

5 1000
perm
2 3 4 5 1
triang
1 2 3
1 3 6
1 6 7
3 4 5
3 5 6
triang
1 2 7
2 3 4
2 4 5
2 5 6
2 6 7
triang
1 2 3
1 3 6
1 6 7
3 4 6
4 5 6
triang
1 2 7
2 3 4
2 4 5
2 5 6
2 6 7
perm
2 1 4 5 3
perm
3 1 4 2 5
perm
5 1 2 3 4
poly
4 2
.#
##
##
#.
triang
1 2 3
1 3 7
3 4 7
4 5 7
5 6 7
triang
1 2 4
1 4 7
2 3 4
4 ...

output:

5 1000
triang
1 2 3
1 3 7
3 4 5
3 5 6
3 6 7
poly
3 3
.##
###
#..
perm
1 2 3 4 5
perm
3 1 5 2 4
perm
1 2 3 4 5
triang
1 2 6
1 6 7
2 3 6
3 4 5
3 5 6
poly
4 2
##
##
#.
#.
poly
1 5
#####
perm
1 2 4 3 5
perm
2 5 1 3 4
perm
2 3 4 1 5
perm
1 3 2 5 4
perm
1 2 5 3 4
poly
3 3
.##
##.
##.
poly
4 2
.#
.#
.#
##
...

input:

5 1000
triang
1 2 3
1 3 7
3 4 5
3 5 6
3 6 7
poly
3 3
.##
###
#..
perm
1 2 3 4 5
perm
3 1 5 2 4
perm
1 2 3 4 5
triang
1 2 6
1 6 7
2 3 6
3 4 5
3 5 6
poly
4 2
##
##
#.
#.
poly
1 5
#####
perm
1 2 4 3 5
perm
2 5 1 3 4
perm
2 3 4 1 5
perm
1 3 2 5 4
perm
1 2 5 3 4
poly
3 3
.##
##.
##.
poly
4 2
.#
.#
.#
##
...

output:

5 1000
perm
2 3 4 5 1
triang
1 2 3
1 3 6
1 6 7
3 4 5
3 5 6
triang
1 2 7
2 3 4
2 4 5
2 5 6
2 6 7
triang
1 2 3
1 3 6
1 6 7
3 4 6
4 5 6
triang
1 2 7
2 3 4
2 4 5
2 5 6
2 6 7
perm
2 1 4 5 3
perm
3 1 4 2 5
perm
5 1 2 3 4
poly
4 2
.#
##
##
#.
triang
1 2 3
1 3 7
3 4 7
4 5 7
5 6 7
triang
1 2 4
1 4 7
2 3 4
4 ...

result:

ok good communication process (1000 test cases)

Test #10:

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

input:

6 1000
perm
6 1 2 3 4 5
triang
1 2 3
1 3 5
1 5 8
3 4 5
5 6 8
6 7 8
triang
1 2 5
1 5 6
1 6 8
2 3 4
2 4 5
6 7 8
poly
4 3
..#
.##
.#.
##.
poly
4 3
.##
.##
###
#..
triang
1 2 3
1 3 4
1 4 5
1 5 6
1 6 8
6 7 8
poly
3 4
####
##..
##..
perm
1 4 2 5 6 3
triang
1 2 3
1 3 7
1 7 8
3 4 6
3 6 7
4 5 6
poly
4 3
###
...

output:

6 1000
poly
1 6
######
poly
3 4
..##
.###
###.
perm
3 4 1 2 5 6
triang
1 2 4
1 4 8
2 3 4
4 5 6
4 6 8
6 7 8
perm
5 1 2 3 4 6
perm
5 6 1 2 3 4
perm
2 1 6 3 4 5
triang
1 2 8
2 3 8
3 4 5
3 5 6
3 6 8
6 7 8
poly
3 4
.###
.###
###.
triang
1 2 6
1 6 8
2 3 6
3 4 5
3 5 6
6 7 8
poly
3 4
..##
.###
##..
triang
1...

input:

6 1000
poly
1 6
######
poly
3 4
..##
.###
###.
perm
3 4 1 2 5 6
triang
1 2 4
1 4 8
2 3 4
4 5 6
4 6 8
6 7 8
perm
5 1 2 3 4 6
perm
5 6 1 2 3 4
perm
2 1 6 3 4 5
triang
1 2 8
2 3 8
3 4 5
3 5 6
3 6 8
6 7 8
poly
3 4
.###
.###
###.
triang
1 2 6
1 6 8
2 3 6
3 4 5
3 5 6
6 7 8
poly
3 4
..##
.###
##..
triang
1...

output:

6 1000
perm
6 1 2 3 4 5
triang
1 2 3
1 3 5
1 5 8
3 4 5
5 6 8
6 7 8
triang
1 2 5
1 5 6
1 6 8
2 3 4
2 4 5
6 7 8
poly
4 3
..#
.##
.#.
##.
poly
4 3
.##
.##
###
#..
triang
1 2 3
1 3 4
1 4 5
1 5 6
1 6 8
6 7 8
poly
3 4
####
##..
##..
perm
1 4 2 5 6 3
triang
1 2 3
1 3 7
1 7 8
3 4 6
3 6 7
4 5 6
poly
4 3
###
...

result:

ok good communication process (1000 test cases)

Test #11:

score: 100
Accepted
time: 25ms
memory: 4240kb

input:

8 1000
triang
1 2 3
1 3 10
3 4 5
3 5 9
3 9 10
5 6 8
5 8 9
6 7 8
triang
1 2 3
1 3 4
1 4 6
1 6 7
1 7 8
1 8 9
1 9 10
4 5 6
poly
4 5
...##
..##.
.###.
###..
perm
3 1 2 6 4 5 7 8
triang
1 2 6
1 6 10
2 3 4
2 4 6
4 5 6
6 7 8
6 8 10
8 9 10
triang
1 2 3
1 3 7
1 7 10
3 4 7
4 5 6
4 6 7
7 8 10
8 9 10
perm
2 5 1...

output:

8 1000
perm
2 3 5 7 1 4 8 6
perm
7 1 2 3 4 8 5 6
perm
4 1 2 5 3 8 6 7
triang
1 2 8
1 8 9
1 9 10
2 3 4
2 4 5
2 5 8
5 6 8
6 7 8
poly
6 3
.##
.##
.#.
.#.
##.
#..
poly
4 5
..###
.####
###..
##...
triang
1 2 6
1 6 10
2 3 4
2 4 5
2 5 6
6 7 10
7 8 10
8 9 10
perm
2 4 5 1 3 6 8 7
poly
4 5
..###
.###.
####.
#...

input:

8 1000
perm
2 3 5 7 1 4 8 6
perm
7 1 2 3 4 8 5 6
perm
4 1 2 5 3 8 6 7
triang
1 2 8
1 8 9
1 9 10
2 3 4
2 4 5
2 5 8
5 6 8
6 7 8
poly
6 3
.##
.##
.#.
.#.
##.
#..
poly
4 5
..###
.####
###..
##...
triang
1 2 6
1 6 10
2 3 4
2 4 5
2 5 6
6 7 10
7 8 10
8 9 10
perm
2 4 5 1 3 6 8 7
poly
4 5
..###
.###.
####.
#...

output:

8 1000
triang
1 2 3
1 3 10
3 4 5
3 5 9
3 9 10
5 6 8
5 8 9
6 7 8
triang
1 2 3
1 3 4
1 4 6
1 6 7
1 7 8
1 8 9
1 9 10
4 5 6
poly
4 5
...##
..##.
.###.
###..
perm
3 1 2 6 4 5 7 8
triang
1 2 6
1 6 10
2 3 4
2 4 6
4 5 6
6 7 8
6 8 10
8 9 10
triang
1 2 3
1 3 7
1 7 10
3 4 7
4 5 6
4 6 7
7 8 10
8 9 10
perm
2 5 1...

result:

ok good communication process (1000 test cases)

Test #12:

score: 100
Accepted
time: 25ms
memory: 4248kb

input:

9 1000
triang
1 2 8
1 8 11
2 3 8
3 4 6
3 6 7
3 7 8
4 5 6
8 9 10
8 10 11
poly
5 5
....#
...##
.####
###..
#....
poly
6 4
.###
.###
.###
.##.
.##.
##..
perm
3 1 2 5 4 6 7 8 9
poly
6 4
...#
..##
.###
####
####
#...
poly
3 7
.######
.####..
##.....
perm
4 5 1 7 2 3 8 9 6
perm
2 1 5 3 4 8 6 7 9
poly
5 5
...

output:

9 1000
perm
2 3 4 1 6 7 9 5 8
perm
2 1 5 6 7 3 4 9 8
perm
2 4 7 1 8 3 5 6 9
triang
1 2 9
1 9 10
1 10 11
2 3 4
2 4 5
2 5 6
2 6 7
2 7 9
7 8 9
perm
3 4 1 6 2 7 8 5 9
perm
3 4 7 9 1 2 5 6 8
poly
5 5
...##
..###
..###
.###.
####.
poly
6 4
..##
..##
..##
.###
.##.
###.
triang
1 2 6
1 6 11
2 3 6
3 4 5
3 5 ...

input:

9 1000
perm
2 3 4 1 6 7 9 5 8
perm
2 1 5 6 7 3 4 9 8
perm
2 4 7 1 8 3 5 6 9
triang
1 2 9
1 9 10
1 10 11
2 3 4
2 4 5
2 5 6
2 6 7
2 7 9
7 8 9
perm
3 4 1 6 2 7 8 5 9
perm
3 4 7 9 1 2 5 6 8
poly
5 5
...##
..###
..###
.###.
####.
poly
6 4
..##
..##
..##
.###
.##.
###.
triang
1 2 6
1 6 11
2 3 6
3 4 5
3 5 ...

output:

9 1000
triang
1 2 8
1 8 11
2 3 8
3 4 6
3 6 7
3 7 8
4 5 6
8 9 10
8 10 11
poly
5 5
....#
...##
.####
###..
#....
poly
6 4
.###
.###
.###
.##.
.##.
##..
perm
3 1 2 5 4 6 7 8 9
poly
6 4
...#
..##
.###
####
####
#...
poly
3 7
.######
.####..
##.....
perm
4 5 1 7 2 3 8 9 6
perm
2 1 5 3 4 8 6 7 9
poly
5 5
...

result:

ok good communication process (1000 test cases)

Test #13:

score: 100
Accepted
time: 26ms
memory: 4520kb

input:

10 1000
perm
5 7 1 2 8 3 4 10 6 9
poly
6 5
....#
..###
.####
####.
####.
#....
poly
4 7
.....##
#######
######.
######.
perm
2 1 3 5 4 8 9 10 6 7
triang
1 2 11
1 11 12
2 3 8
2 8 11
3 4 5
3 5 6
3 6 8
6 7 8
8 9 10
8 10 11
perm
1 8 2 3 9 4 10 5 6 7
perm
4 1 7 8 2 9 3 10 5 6
perm
6 1 2 7 3 4 8 10 5 9
tr...

output:

10 1000
poly
5 6
....##
#####.
##....
##....
#.....
triang
1 2 4
1 4 5
1 5 6
1 6 8
1 8 9
1 9 10
1 10 12
2 3 4
6 7 8
10 11 12
triang
1 2 3
1 3 9
1 9 12
3 4 9
4 5 9
5 6 7
5 7 8
5 8 9
9 10 11
9 11 12
triang
1 2 11
1 11 12
2 3 8
2 8 10
2 10 11
3 4 8
4 5 6
4 6 7
4 7 8
8 9 10
perm
2 1 4 5 3 8 6 9 10 7
tri...

input:

10 1000
poly
5 6
....##
#####.
##....
##....
#.....
triang
1 2 4
1 4 5
1 5 6
1 6 8
1 8 9
1 9 10
1 10 12
2 3 4
6 7 8
10 11 12
triang
1 2 3
1 3 9
1 9 12
3 4 9
4 5 9
5 6 7
5 7 8
5 8 9
9 10 11
9 11 12
triang
1 2 11
1 11 12
2 3 8
2 8 10
2 10 11
3 4 8
4 5 6
4 6 7
4 7 8
8 9 10
perm
2 1 4 5 3 8 6 9 10 7
tri...

output:

10 1000
perm
5 7 1 2 8 3 4 10 6 9
poly
6 5
....#
..###
.####
####.
####.
#....
poly
4 7
.....##
#######
######.
######.
perm
2 1 3 5 4 8 9 10 6 7
triang
1 2 11
1 11 12
2 3 8
2 8 11
3 4 5
3 5 6
3 6 8
6 7 8
8 9 10
8 10 11
perm
1 8 2 3 9 4 10 5 6 7
perm
4 1 7 8 2 9 3 10 5 6
perm
6 1 2 7 3 4 8 10 5 9
tr...

result:

ok good communication process (1000 test cases)

Test #14:

score: 100
Accepted
time: 22ms
memory: 4536kb

input:

11 1000
triang
1 2 13
2 3 12
2 12 13
3 4 7
3 7 8
3 8 12
4 5 7
5 6 7
8 9 11
8 11 12
9 10 11
perm
2 1 4 3 6 5 9 10 11 7 8
poly
7 5
..###
..###
.####
.#...
##...
#....
#....
triang
1 2 4
1 4 12
1 12 13
2 3 4
4 5 11
4 11 12
5 6 11
6 7 8
6 8 11
8 9 10
8 10 11
perm
4 7 1 8 2 3 10 5 6 9 11
triang
1 2 13
2 ...

output:

11 1000
poly
5 7
....###
...####
#######
#####..
##.....
triang
1 2 12
1 12 13
2 3 8
2 8 10
2 10 12
3 4 8
4 5 6
4 6 7
4 7 8
8 9 10
10 11 12
triang
1 2 4
1 4 5
1 5 13
2 3 4
5 6 13
6 7 11
6 11 12
6 12 13
7 8 11
8 9 11
9 10 11
poly
7 5
...##
..##.
####.
###..
###..
###..
##...
triang
1 2 4
1 4 5
1 5 8
...

input:

11 1000
poly
5 7
....###
...####
#######
#####..
##.....
triang
1 2 12
1 12 13
2 3 8
2 8 10
2 10 12
3 4 8
4 5 6
4 6 7
4 7 8
8 9 10
10 11 12
triang
1 2 4
1 4 5
1 5 13
2 3 4
5 6 13
6 7 11
6 11 12
6 12 13
7 8 11
8 9 11
9 10 11
poly
7 5
...##
..##.
####.
###..
###..
###..
##...
triang
1 2 4
1 4 5
1 5 8
...

output:

11 1000
triang
1 2 13
2 3 12
2 12 13
3 4 7
3 7 8
3 8 12
4 5 7
5 6 7
8 9 11
8 11 12
9 10 11
perm
2 1 4 3 6 5 9 10 11 7 8
poly
7 5
..###
..###
.####
.#...
##...
#....
#....
triang
1 2 4
1 4 12
1 12 13
2 3 4
4 5 11
4 11 12
5 6 11
6 7 8
6 8 11
8 9 10
8 10 11
perm
4 7 1 8 2 3 10 5 6 9 11
triang
1 2 13
2 ...

result:

ok good communication process (1000 test cases)

Test #15:

score: 100
Accepted
time: 26ms
memory: 4244kb

input:

12 1000
triang
1 2 4
1 4 5
1 5 14
2 3 4
5 6 7
5 7 14
7 8 9
7 9 14
9 10 14
10 11 13
10 13 14
11 12 13
triang
1 2 12
1 12 14
2 3 4
2 4 12
4 5 11
4 11 12
5 6 11
6 7 9
6 9 11
7 8 9
9 10 11
12 13 14
perm
4 5 1 6 2 7 9 10 11 12 3 8
perm
1 2 4 6 7 3 5 9 8 10 12 11
poly
7 6
...###
.####.
.####.
.####.
####....

output:

12 1000
perm
3 7 9 1 2 4 10 5 11 6 8 12
perm
2 3 1 5 9 4 11 6 7 8 10 12
triang
1 2 3
1 3 10
1 10 12
1 12 14
3 4 9
3 9 10
4 5 6
4 6 7
4 7 8
4 8 9
10 11 12
12 13 14
poly
7 6
.....#
..####
.####.
.####.
.####.
####..
#.....
triang
1 2 7
1 7 8
1 8 14
2 3 7
3 4 5
3 5 7
5 6 7
8 9 14
9 10 11
9 11 14
11 12 ...

input:

12 1000
perm
3 7 9 1 2 4 10 5 11 6 8 12
perm
2 3 1 5 9 4 11 6 7 8 10 12
triang
1 2 3
1 3 10
1 10 12
1 12 14
3 4 9
3 9 10
4 5 6
4 6 7
4 7 8
4 8 9
10 11 12
12 13 14
poly
7 6
.....#
..####
.####.
.####.
.####.
####..
#.....
triang
1 2 7
1 7 8
1 8 14
2 3 7
3 4 5
3 5 7
5 6 7
8 9 14
9 10 11
9 11 14
11 12 ...

output:

12 1000
triang
1 2 4
1 4 5
1 5 14
2 3 4
5 6 7
5 7 14
7 8 9
7 9 14
9 10 14
10 11 13
10 13 14
11 12 13
triang
1 2 12
1 12 14
2 3 4
2 4 12
4 5 11
4 11 12
5 6 11
6 7 9
6 9 11
7 8 9
9 10 11
12 13 14
perm
4 5 1 6 2 7 9 10 11 12 3 8
perm
1 2 4 6 7 3 5 9 8 10 12 11
poly
7 6
...###
.####.
.####.
.####.
####....

result:

ok good communication process (1000 test cases)

Test #16:

score: 100
Accepted
time: 27ms
memory: 4520kb

input:

13 1000
perm
3 5 8 9 1 2 4 6 7 11 10 13 12
triang
1 2 3
1 3 15
3 4 5
3 5 10
3 10 11
3 11 15
5 6 9
5 9 10
6 7 8
6 8 9
11 12 15
12 13 15
13 14 15
poly
4 10
......####
.######...
#######...
#####.....
perm
5 1 2 3 6 4 10 7 11 12 8 13 9
poly
6 8
......##
....####
....###.
.######.
#####...
##......
poly...

output:

13 1000
triang
1 2 7
1 7 8
1 8 15
2 3 5
2 5 7
3 4 5
5 6 7
8 9 15
9 10 14
9 14 15
10 11 14
11 12 13
11 13 14
poly
7 7
.....##
..####.
.#####.
.##....
.##....
.##....
###....
triang
1 2 3
1 3 14
1 14 15
3 4 14
4 5 14
5 6 14
6 7 14
7 8 10
7 10 14
8 9 10
10 11 12
10 12 13
10 13 14
poly
7 7
.....##
....#...

input:

13 1000
triang
1 2 7
1 7 8
1 8 15
2 3 5
2 5 7
3 4 5
5 6 7
8 9 15
9 10 14
9 14 15
10 11 14
11 12 13
11 13 14
poly
7 7
.....##
..####.
.#####.
.##....
.##....
.##....
###....
triang
1 2 3
1 3 14
1 14 15
3 4 14
4 5 14
5 6 14
6 7 14
7 8 10
7 10 14
8 9 10
10 11 12
10 12 13
10 13 14
poly
7 7
.....##
....#...

output:

13 1000
perm
3 5 8 9 1 2 4 6 7 11 10 13 12
triang
1 2 3
1 3 15
3 4 5
3 5 10
3 10 11
3 11 15
5 6 9
5 9 10
6 7 8
6 8 9
11 12 15
12 13 15
13 14 15
poly
4 10
......####
.######...
#######...
#####.....
perm
5 1 2 3 6 4 10 7 11 12 8 13 9
poly
6 8
......##
....####
....###.
.######.
#####...
##......
poly...

result:

ok good communication process (1000 test cases)

Test #17:

score: 100
Accepted
time: 27ms
memory: 4536kb

input:

14 1000
perm
5 6 1 8 2 9 3 4 11 13 14 7 10 12
triang
1 2 3
1 3 8
1 8 10
1 10 16
3 4 5
3 5 8
5 6 7
5 7 8
8 9 10
10 11 16
11 12 13
11 13 16
13 14 16
14 15 16
poly
9 6
.....#
....##
....##
..####
..####
.#####
####..
####..
#.....
triang
1 2 3
1 3 11
1 11 12
1 12 14
1 14 16
3 4 11
4 5 8
4 8 11
5 6 8
6 ...

output:

14 1000
poly
6 9
.......##
.....####
...#####.
.#####...
#####....
##.......
poly
8 7
...####
...####
..####.
..##...
..#....
.##....
##.....
##.....
perm
3 1 2 6 4 5 8 10 11 7 9 13 12 14
perm
5 6 1 7 2 3 10 11 4 14 8 9 12 13
perm
3 1 5 2 6 7 4 9 8 11 13 10 12 14
poly
7 8
......##
.....###
..######
...

input:

14 1000
poly
6 9
.......##
.....####
...#####.
.#####...
#####....
##.......
poly
8 7
...####
...####
..####.
..##...
..#....
.##....
##.....
##.....
perm
3 1 2 6 4 5 8 10 11 7 9 13 12 14
perm
5 6 1 7 2 3 10 11 4 14 8 9 12 13
perm
3 1 5 2 6 7 4 9 8 11 13 10 12 14
poly
7 8
......##
.....###
..######
...

output:

14 1000
perm
5 6 1 8 2 9 3 4 11 13 14 7 10 12
triang
1 2 3
1 3 8
1 8 10
1 10 16
3 4 5
3 5 8
5 6 7
5 7 8
8 9 10
10 11 16
11 12 13
11 13 16
13 14 16
14 15 16
poly
9 6
.....#
....##
....##
..####
..####
.#####
####..
####..
#.....
triang
1 2 3
1 3 11
1 11 12
1 12 14
1 14 16
3 4 11
4 5 8
4 8 11
5 6 8
6 ...

result:

ok good communication process (1000 test cases)

Test #18:

score: 100
Accepted
time: 28ms
memory: 4528kb

input:

16 1000
poly
9 8
....####
....####
....##..
....#...
..###...
.####...
.####...
####....
##......
poly
7 10
.........#
.......###
......####
..#####...
..###.....
.####.....
##........
poly
9 8
.......#
.#######
.#######
########
#####...
####....
####....
####....
#.......
triang
1 2 18
2 3 18
3 4 ...

output:

16 1000
perm
4 6 7 1 2 9 3 5 11 12 13 14 15 8 16 10
perm
2 4 5 7 1 3 6 8 11 12 9 14 16 10 13 15
perm
1 6 7 2 3 4 9 10 11 5 8 14 12 13 16 15
poly
6 11
........###
....#####..
....###....
...####....
.####......
####.......
poly
8 9
.......##
......###
.....###.
...####..
..#####..
.#####...
.###........

input:

16 1000
perm
4 6 7 1 2 9 3 5 11 12 13 14 15 8 16 10
perm
2 4 5 7 1 3 6 8 11 12 9 14 16 10 13 15
perm
1 6 7 2 3 4 9 10 11 5 8 14 12 13 16 15
poly
6 11
........###
....#####..
....###....
...####....
.####......
####.......
poly
8 9
.......##
......###
.....###.
...####..
..#####..
.#####...
.###........

output:

16 1000
poly
9 8
....####
....####
....##..
....#...
..###...
.####...
.####...
####....
##......
poly
7 10
.........#
.......###
......####
..#####...
..###.....
.####.....
##........
poly
9 8
.......#
.#######
.#######
########
#####...
####....
####....
####....
#.......
triang
1 2 18
2 3 18
3 4 ...

result:

ok good communication process (1000 test cases)

Test #19:

score: 100
Accepted
time: 25ms
memory: 4300kb

input:

17 1000
perm
2 1 3 6 4 10 11 5 12 15 7 8 9 13 14 17 16
triang
1 2 5
1 5 19
2 3 5
3 4 5
5 6 7
5 7 8
5 8 18
5 18 19
8 9 11
8 11 18
9 10 11
11 12 14
11 14 15
11 15 16
11 16 18
12 13 14
16 17 18
triang
1 2 3
1 3 18
1 18 19
3 4 16
3 16 18
4 5 6
4 6 9
4 9 10
4 10 11
4 11 16
6 7 9
7 8 9
11 12 14
11 14 15
1...

output:

17 1000
poly
10 8
....####
....##..
..####..
..####..
..####..
..#.....
.##.....
.#......
.#......
##......
poly
10 8
.....###
.....##.
.....##.
.....##.
...####.
...##...
..###...
.####...
.##.....
##......
poly
8 10
........##
......####
....####..
...####...
...####...
..#####...
####......
####....

input:

17 1000
poly
10 8
....####
....##..
..####..
..####..
..####..
..#.....
.##.....
.#......
.#......
##......
poly
10 8
.....###
.....##.
.....##.
.....##.
...####.
...##...
..###...
.####...
.##.....
##......
poly
8 10
........##
......####
....####..
...####...
...####...
..#####...
####......
####....

output:

17 1000
perm
2 1 3 6 4 10 11 5 12 15 7 8 9 13 14 17 16
triang
1 2 5
1 5 19
2 3 5
3 4 5
5 6 7
5 7 8
5 8 18
5 18 19
8 9 11
8 11 18
9 10 11
11 12 14
11 14 15
11 15 16
11 16 18
12 13 14
16 17 18
triang
1 2 3
1 3 18
1 18 19
3 4 16
3 16 18
4 5 6
4 6 9
4 9 10
4 10 11
4 11 16
6 7 9
7 8 9
11 12 14
11 14 15
1...

result:

ok good communication process (1000 test cases)

Test #20:

score: 100
Accepted
time: 22ms
memory: 4268kb

input:

18 1000
triang
1 2 17
1 17 19
1 19 20
2 3 4
2 4 11
2 11 13
2 13 17
4 5 6
4 6 9
4 9 10
4 10 11
6 7 9
7 8 9
11 12 13
13 14 15
13 15 16
13 16 17
17 18 19
poly
10 9
......###
......###
....####.
....####.
#####....
###......
##.......
#........
#........
#........
triang
1 2 3
1 3 11
1 11 20
3 4 5
3 5 1...

output:

18 1000
poly
11 8
.......#
.....###
.....###
....####
....####
#######.
#######.
#######.
#####...
##......
#.......
triang
1 2 20
2 3 20
3 4 5
3 5 6
3 6 20
6 7 10
6 10 12
6 12 20
7 8 10
8 9 10
10 11 12
12 13 15
12 15 17
12 17 20
13 14 15
15 16 17
17 18 20
18 19 20
poly
10 9
.....####
.....##..
...#...

input:

18 1000
poly
11 8
.......#
.....###
.....###
....####
....####
#######.
#######.
#######.
#####...
##......
#.......
triang
1 2 20
2 3 20
3 4 5
3 5 6
3 6 20
6 7 10
6 10 12
6 12 20
7 8 10
8 9 10
10 11 12
12 13 15
12 15 17
12 17 20
13 14 15
15 16 17
17 18 20
18 19 20
poly
10 9
.....####
.....##..
...#...

output:

18 1000
triang
1 2 17
1 17 19
1 19 20
2 3 4
2 4 11
2 11 13
2 13 17
4 5 6
4 6 9
4 9 10
4 10 11
6 7 9
7 8 9
11 12 13
13 14 15
13 15 16
13 16 17
17 18 19
poly
10 9
......###
......###
....####.
....####.
#####....
###......
##.......
#........
#........
#........
triang
1 2 3
1 3 11
1 11 20
3 4 5
3 5 1...

result:

ok good communication process (1000 test cases)

Test #21:

score: 100
Accepted
time: 29ms
memory: 4548kb

input:

19 1000
poly
12 8
.......#
.......#
......##
....###.
....###.
.####...
.###....
####....
##......
##......
##......
##......
poly
10 10
........##
........#.
.......##.
.......#..
...#####..
..####....
.####.....
.##.......
###.......
###.......
poly
9 11
.........##
....#######
...########
...####...

output:

19 1000
perm
1 2 8 3 4 14 5 6 15 7 9 10 16 17 11 12 13 18 19
perm
1 2 10 3 4 5 11 12 14 15 6 16 7 17 8 18 9 19 13
perm
1 11 13 16 2 3 4 17 5 6 7 8 9 18 10 12 19 14 15
poly
11 9
...######
...####..
..####...
.#####...
.####....
.####....
.####....
.####....
#####....
#####....
####.....
poly
11 9
......

input:

19 1000
perm
1 2 8 3 4 14 5 6 15 7 9 10 16 17 11 12 13 18 19
perm
1 2 10 3 4 5 11 12 14 15 6 16 7 17 8 18 9 19 13
perm
1 11 13 16 2 3 4 17 5 6 7 8 9 18 10 12 19 14 15
poly
11 9
...######
...####..
..####...
.#####...
.####....
.####....
.####....
.####....
#####....
#####....
####.....
poly
11 9
......

output:

19 1000
poly
12 8
.......#
.......#
......##
....###.
....###.
.####...
.###....
####....
##......
##......
##......
##......
poly
10 10
........##
........#.
.......##.
.......#..
...#####..
..####....
.####.....
.##.......
###.......
###.......
poly
9 11
.........##
....#######
...########
...####...

result:

ok good communication process (1000 test cases)

Test #22:

score: 100
Accepted
time: 30ms
memory: 4336kb

input:

20 1000
triang
1 2 3
1 3 21
1 21 22
3 4 17
3 17 18
3 18 19
3 19 20
3 20 21
4 5 10
4 10 11
4 11 17
5 6 10
6 7 9
6 9 10
7 8 9
11 12 13
11 13 16
11 16 17
13 14 15
13 15 16
triang
1 2 4
1 4 5
1 5 14
1 14 21
1 21 22
2 3 4
5 6 13
5 13 14
6 7 10
6 10 11
6 11 13
7 8 9
7 9 10
11 12 13
14 15 16
14 16 21
16 17...

output:

20 1000
poly
8 13
.........####
.........####
....######...
..#######....
..####.......
..###........
###..........
###..........
poly
12 9
.....####
.....####
....#####
....#####
....#####
..#######
..#######
.########
#########
#########
#######..
#........
triang
1 2 22
2 3 22
3 4 5
3 5 22
5 6 22...

input:

20 1000
poly
8 13
.........####
.........####
....######...
..#######....
..####.......
..###........
###..........
###..........
poly
12 9
.....####
.....####
....#####
....#####
....#####
..#######
..#######
.########
#########
#########
#######..
#........
triang
1 2 22
2 3 22
3 4 5
3 5 22
5 6 22...

output:

20 1000
triang
1 2 3
1 3 21
1 21 22
3 4 17
3 17 18
3 18 19
3 19 20
3 20 21
4 5 10
4 10 11
4 11 17
5 6 10
6 7 9
6 9 10
7 8 9
11 12 13
11 13 16
11 16 17
13 14 15
13 15 16
triang
1 2 4
1 4 5
1 5 14
1 14 21
1 21 22
2 3 4
5 6 13
5 13 14
6 7 10
6 10 11
6 11 13
7 8 9
7 9 10
11 12 13
14 15 16
14 16 21
16 17...

result:

ok good communication process (1000 test cases)

Test #23:

score: 100
Accepted
time: 30ms
memory: 4552kb

input:

21 1000
perm
2 5 1 3 6 4 12 7 16 8 9 10 11 13 18 14 15 19 17 21 20
triang
1 2 3
1 3 21
1 21 22
1 22 23
3 4 5
3 5 7
3 7 8
3 8 16
3 16 17
3 17 21
5 6 7
8 9 16
9 10 16
10 11 13
10 13 15
10 15 16
11 12 13
13 14 15
17 18 19
17 19 21
19 20 21
perm
6 1 7 9 10 2 11 3 13 16 4 5 8 17 19 12 20 14 15 18 21
tria...

output:

21 1000
triang
1 2 18
1 18 23
2 3 5
2 5 18
3 4 5
5 6 7
5 7 18
7 8 10
7 10 18
8 9 10
10 11 18
11 12 16
11 16 18
12 13 16
13 14 16
14 15 16
16 17 18
18 19 20
18 20 23
20 21 23
21 22 23
poly
11 11
..........#
........###
....#######
...#######.
...#######.
..#####....
..#........
.##........
.#...........

input:

21 1000
triang
1 2 18
1 18 23
2 3 5
2 5 18
3 4 5
5 6 7
5 7 18
7 8 10
7 10 18
8 9 10
10 11 18
11 12 16
11 16 18
12 13 16
13 14 16
14 15 16
16 17 18
18 19 20
18 20 23
20 21 23
21 22 23
poly
11 11
..........#
........###
....#######
...#######.
...#######.
..#####....
..#........
.##........
.#...........

output:

21 1000
perm
2 5 1 3 6 4 12 7 16 8 9 10 11 13 18 14 15 19 17 21 20
triang
1 2 3
1 3 21
1 21 22
1 22 23
3 4 5
3 5 7
3 7 8
3 8 16
3 16 17
3 17 21
5 6 7
8 9 16
9 10 16
10 11 13
10 13 15
10 15 16
11 12 13
13 14 15
17 18 19
17 19 21
19 20 21
perm
6 1 7 9 10 2 11 3 13 16 4 5 8 17 19 12 20 14 15 18 21
tria...

result:

ok good communication process (1000 test cases)

Test #24:

score: 100
Accepted
time: 31ms
memory: 4552kb

input:

22 1000
poly
11 12
.........###
.......#####
.....######.
.....#####..
.....###....
.....##.....
...###......
..####......
.####.......
.####.......
###.........
perm
1 7 2 9 3 4 10 12 14 17 5 6 19 8 11 13 20 21 15 16 18 22
perm
2 4 5 10 1 13 3 6 14 7 16 8 18 9 19 11 12 21 15 17 22 20
poly
11 12
......

output:

22 1000
perm
2 3 7 1 4 5 8 12 6 13 16 9 10 18 19 11 20 14 21 22 15 17
triang
1 2 24
2 3 4
2 4 24
4 5 24
5 6 24
6 7 8
6 8 9
6 9 18
6 18 19
6 19 24
9 10 17
9 17 18
10 11 13
10 13 16
10 16 17
11 12 13
13 14 16
14 15 16
19 20 22
19 22 24
20 21 22
22 23 24
poly
12 11
.......####
...######..
...#####...
....

input:

22 1000
perm
2 3 7 1 4 5 8 12 6 13 16 9 10 18 19 11 20 14 21 22 15 17
triang
1 2 24
2 3 4
2 4 24
4 5 24
5 6 24
6 7 8
6 8 9
6 9 18
6 18 19
6 19 24
9 10 17
9 17 18
10 11 13
10 13 16
10 16 17
11 12 13
13 14 16
14 15 16
19 20 22
19 22 24
20 21 22
22 23 24
poly
12 11
.......####
...######..
...#####...
....

output:

22 1000
poly
11 12
.........###
.......#####
.....######.
.....#####..
.....###....
.....##.....
...###......
..####......
.####.......
.####.......
###.........
perm
1 7 2 9 3 4 10 12 14 17 5 6 19 8 11 13 20 21 15 16 18 22
perm
2 4 5 10 1 13 3 6 14 7 16 8 18 9 19 11 12 21 15 17 22 20
poly
11 12
......

result:

ok good communication process (1000 test cases)

Test #25:

score: 100
Accepted
time: 31ms
memory: 4308kb

input:

23 1000
triang
1 2 3
1 3 25
3 4 10
3 10 11
3 11 14
3 14 15
3 15 16
3 16 19
3 19 21
3 21 25
4 5 7
4 7 8
4 8 10
5 6 7
8 9 10
11 12 14
12 13 14
16 17 19
17 18 19
19 20 21
21 22 23
21 23 24
21 24 25
poly
16 8
....####
....####
....####
....####
....####
....####
....####
....####
....####
...####.
.####...

output:

23 1000
poly
11 13
.........####
.........##..
.........##..
.......###...
.......###...
.......###...
....#####....
...####......
.####........
.#...........
##...........
perm
1 6 2 7 8 3 11 12 4 5 9 10 15 16 20 13 14 17 18 19 21 22 23
perm
1 6 8 2 9 10 12 3 4 5 7 11 19 13 14 21 15 16 17 22 18 20 ...

input:

23 1000
poly
11 13
.........####
.........##..
.........##..
.......###...
.......###...
.......###...
....#####....
...####......
.####........
.#...........
##...........
perm
1 6 2 7 8 3 11 12 4 5 9 10 15 16 20 13 14 17 18 19 21 22 23
perm
1 6 8 2 9 10 12 3 4 5 7 11 19 13 14 21 15 16 17 22 18 20 ...

output:

23 1000
triang
1 2 3
1 3 25
3 4 10
3 10 11
3 11 14
3 14 15
3 15 16
3 16 19
3 19 21
3 21 25
4 5 7
4 7 8
4 8 10
5 6 7
8 9 10
11 12 14
12 13 14
16 17 19
17 18 19
19 20 21
21 22 23
21 23 24
21 24 25
poly
16 8
....####
....####
....####
....####
....####
....####
....####
....####
....####
...####.
.####...

result:

ok good communication process (1000 test cases)

Test #26:

score: 100
Accepted
time: 32ms
memory: 4564kb

input:

24 1000
triang
1 2 3
1 3 11
1 11 17
1 17 18
1 18 19
1 19 21
1 21 26
3 4 11
4 5 6
4 6 7
4 7 11
7 8 9
7 9 10
7 10 11
11 12 13
11 13 15
11 15 17
13 14 15
15 16 17
19 20 21
21 22 24
21 24 25
21 25 26
22 23 24
triang
1 2 3
1 3 9
1 9 26
3 4 5
3 5 9
5 6 9
6 7 9
7 8 9
9 10 26
10 11 12
10 12 15
10 15 17
10 1...

output:

24 1000
perm
7 8 9 11 1 2 12 3 4 5 14 6 16 10 17 13 20 21 22 15 23 24 18 19
poly
13 12
......######
.....#######
.....#####..
..#######...
..#######...
.########...
#########...
#########...
#########...
#######.....
#####.......
##..........
#...........
poly
11 14
..........####
.........###..
......

input:

24 1000
perm
7 8 9 11 1 2 12 3 4 5 14 6 16 10 17 13 20 21 22 15 23 24 18 19
poly
13 12
......######
.....#######
.....#####..
..#######...
..#######...
.########...
#########...
#########...
#########...
#######.....
#####.......
##..........
#...........
poly
11 14
..........####
.........###..
......

output:

24 1000
triang
1 2 3
1 3 11
1 11 17
1 17 18
1 18 19
1 19 21
1 21 26
3 4 11
4 5 6
4 6 7
4 7 11
7 8 9
7 9 10
7 10 11
11 12 13
11 13 15
11 15 17
13 14 15
15 16 17
19 20 21
21 22 24
21 24 25
21 25 26
22 23 24
triang
1 2 3
1 3 9
1 9 26
3 4 5
3 5 9
5 6 9
6 7 9
7 8 9
9 10 26
10 11 12
10 12 15
10 15 17
10 1...

result:

ok good communication process (1000 test cases)

Test #27:

score: 100
Accepted
time: 32ms
memory: 4276kb

input:

25 1000
poly
16 10
.........#
........##
......####
.....#####
....######
...#######
...#######
...######.
...######.
..####....
..####....
..###.....
..###.....
####......
###.......
##........
triang
1 2 6
1 6 7
1 7 8
1 8 11
1 11 13
1 13 14
1 14 18
1 18 19
1 19 25
1 25 27
2 3 4
2 4 5
2 5 6
8 9 11
...

output:

25 1000
perm
3 8 1 9 2 11 16 18 19 20 4 21 5 6 7 22 10 12 13 14 15 23 17 24 25
poly
17 9
.......##
......###
......###
......###
.....####
....####.
....####.
....####.
....##...
....##...
...##....
..###....
..###....
..###....
.####....
.##......
##.......
perm
1 12 2 14 3 16 4 5 17 6 7 8 9 10 18 ...

input:

25 1000
perm
3 8 1 9 2 11 16 18 19 20 4 21 5 6 7 22 10 12 13 14 15 23 17 24 25
poly
17 9
.......##
......###
......###
......###
.....####
....####.
....####.
....####.
....##...
....##...
...##....
..###....
..###....
..###....
.####....
.##......
##.......
perm
1 12 2 14 3 16 4 5 17 6 7 8 9 10 18 ...

output:

25 1000
poly
16 10
.........#
........##
......####
.....#####
....######
...#######
...#######
...######.
...######.
..####....
..####....
..###.....
..###.....
####......
###.......
##........
triang
1 2 6
1 6 7
1 7 8
1 8 11
1 11 13
1 13 14
1 14 18
1 18 19
1 19 25
1 25 27
2 3 4
2 4 5
2 5 6
8 9 11
...

result:

ok good communication process (1000 test cases)

Test #28:

score: 100
Accepted
time: 33ms
memory: 4556kb

input:

26 1000
triang
1 2 28
2 3 5
2 5 6
2 6 28
3 4 5
6 7 8
6 8 10
6 10 28
8 9 10
10 11 22
10 22 25
10 25 27
10 27 28
11 12 13
11 13 15
11 15 22
13 14 15
15 16 21
15 21 22
16 17 20
16 20 21
17 18 19
17 19 20
22 23 25
23 24 25
25 26 27
poly
14 13
..........###
.........####
......#######
......######.
....#...

output:

26 1000
poly
15 12
........####
.......####.
......#####.
.....######.
...########.
...########.
...######...
...#####....
...#####....
..######....
.######.....
.#####......
.#..........
##..........
#...........
triang
1 2 3
1 3 28
3 4 5
3 5 28
5 6 7
5 7 8
5 8 9
5 9 24
5 24 25
5 25 26
5 26 27
5 27...

input:

26 1000
poly
15 12
........####
.......####.
......#####.
.....######.
...########.
...########.
...######...
...#####....
...#####....
..######....
.######.....
.#####......
.#..........
##..........
#...........
triang
1 2 3
1 3 28
3 4 5
3 5 28
5 6 7
5 7 8
5 8 9
5 9 24
5 24 25
5 25 26
5 26 27
5 27...

output:

26 1000
triang
1 2 28
2 3 5
2 5 6
2 6 28
3 4 5
6 7 8
6 8 10
6 10 28
8 9 10
10 11 22
10 22 25
10 25 27
10 27 28
11 12 13
11 13 15
11 15 22
13 14 15
15 16 21
15 21 22
16 17 20
16 20 21
17 18 19
17 19 20
22 23 25
23 24 25
25 26 27
poly
14 13
..........###
.........####
......#######
......######.
....#...

result:

ok good communication process (1000 test cases)

Test #29:

score: 100
Accepted
time: 33ms
memory: 4328kb

input:

27 1000
perm
2 4 7 1 10 14 15 3 5 6 8 9 11 18 20 23 24 12 25 13 16 17 19 21 27 22 26
poly
13 15
.............##
.............##
...........###.
...........###.
...........##..
.......######..
.......######..
.......####....
......#####....
..#########....
..#########....
.#######.......
#####..........

output:

27 1000
poly
14 14
........######
........####..
.......####...
.......####...
.......####...
.......####...
....#####.....
....#####.....
...#####......
.#######......
.######.......
####..........
#.............
#.............
perm
2 1 9 3 4 5 6 10 7 11 12 14 22 23 8 13 15 16 17 18 19 20 26 21 27 ...

input:

27 1000
poly
14 14
........######
........####..
.......####...
.......####...
.......####...
.......####...
....#####.....
....#####.....
...#####......
.#######......
.######.......
####..........
#.............
#.............
perm
2 1 9 3 4 5 6 10 7 11 12 14 22 23 8 13 15 16 17 18 19 20 26 21 27 ...

output:

27 1000
perm
2 4 7 1 10 14 15 3 5 6 8 9 11 18 20 23 24 12 25 13 16 17 19 21 27 22 26
poly
13 15
.............##
.............##
...........###.
...........###.
...........##..
.......######..
.......######..
.......####....
......#####....
..#########....
..#########....
.#######.......
#####..........

result:

ok good communication process (1000 test cases)

Test #30:

score: 100
Accepted
time: 31ms
memory: 4556kb

input:

28 1000
poly
13 16
............####
........######..
......#######...
......#######...
....#########...
....#######.....
....#######.....
....#####.......
....##..........
..####..........
..###...........
.####...........
####............
triang
1 2 3
1 3 6
1 6 7
1 7 9
1 9 10
1 10 11
1 11 15
1 15 3...

output:

28 1000
triang
1 2 3
1 3 4
1 4 5
1 5 7
1 7 25
1 25 30
5 6 7
7 8 9
7 9 24
7 24 25
9 10 24
10 11 24
11 12 13
11 13 18
11 18 24
13 14 17
13 17 18
14 15 16
14 16 17
18 19 24
19 20 23
19 23 24
20 21 22
20 22 23
25 26 30
26 27 28
26 28 30
28 29 30
poly
14 15
.............##
...........###.
...........##.....

input:

28 1000
triang
1 2 3
1 3 4
1 4 5
1 5 7
1 7 25
1 25 30
5 6 7
7 8 9
7 9 24
7 24 25
9 10 24
10 11 24
11 12 13
11 13 18
11 18 24
13 14 17
13 17 18
14 15 16
14 16 17
18 19 24
19 20 23
19 23 24
20 21 22
20 22 23
25 26 30
26 27 28
26 28 30
28 29 30
poly
14 15
.............##
...........###.
...........##.....

output:

28 1000
poly
13 16
............####
........######..
......#######...
......#######...
....#########...
....#######.....
....#######.....
....#####.......
....##..........
..####..........
..###...........
.####...........
####............
triang
1 2 3
1 3 6
1 6 7
1 7 9
1 9 10
1 10 11
1 11 15
1 15 3...

result:

ok good communication process (1000 test cases)

Test #31:

score: 100
Accepted
time: 34ms
memory: 4288kb

input:

29 1000
perm
1 4 2 3 5 6 8 13 7 9 18 20 10 23 11 12 14 15 16 17 19 21 24 26 22 27 28 25 29
poly
11 19
................###
.............####..
......########.....
.....########......
....########.......
..##########.......
..########.........
.#######...........
.######............
######...............

output:

29 1000
poly
17 13
............#
............#
............#
.....########
.....#######.
.....######..
....#######..
....#######..
....#######..
...########..
...########..
...######....
...#####.....
...##........
#####........
###..........
###..........
perm
2 4 1 6 11 16 18 3 5 21 22 7 8 25 9 10...

input:

29 1000
poly
17 13
............#
............#
............#
.....########
.....#######.
.....######..
....#######..
....#######..
....#######..
...########..
...########..
...######....
...#####.....
...##........
#####........
###..........
###..........
perm
2 4 1 6 11 16 18 3 5 21 22 7 8 25 9 10...

output:

29 1000
perm
1 4 2 3 5 6 8 13 7 9 18 20 10 23 11 12 14 15 16 17 19 21 24 26 22 27 28 25 29
poly
11 19
................###
.............####..
......########.....
.....########......
....########.......
..##########.......
..########.........
.#######...........
.######............
######...............

result:

ok good communication process (1000 test cases)

Test #32:

score: 100
Accepted
time: 36ms
memory: 4560kb

input:

30 1000
perm
3 5 6 10 11 12 1 2 14 4 7 16 8 19 24 9 13 15 25 26 17 18 27 28 29 20 21 22 30 23
poly
11 20
................####
...............##...
........#########...
........#######.....
.......######.......
.....#######........
.....#####..........
.....####...........
.....##.............
.#####...

output:

30 1000
triang
1 2 3
1 3 5
1 5 32
3 4 5
5 6 32
6 7 20
6 20 22
6 22 30
6 30 31
6 31 32
7 8 9
7 9 10
7 10 11
7 11 20
11 12 19
11 19 20
12 13 14
12 14 15
12 15 19
15 16 19
16 17 19
17 18 19
20 21 22
22 23 25
22 25 30
23 24 25
25 26 30
26 27 28
26 28 29
26 29 30
triang
1 2 3
1 3 23
1 23 32
3 4 23
4 5 22...

input:

30 1000
triang
1 2 3
1 3 5
1 5 32
3 4 5
5 6 32
6 7 20
6 20 22
6 22 30
6 30 31
6 31 32
7 8 9
7 9 10
7 10 11
7 11 20
11 12 19
11 19 20
12 13 14
12 14 15
12 15 19
15 16 19
16 17 19
17 18 19
20 21 22
22 23 25
22 25 30
23 24 25
25 26 30
26 27 28
26 28 29
26 29 30
triang
1 2 3
1 3 23
1 23 32
3 4 23
4 5 22...

output:

30 1000
perm
3 5 6 10 11 12 1 2 14 4 7 16 8 19 24 9 13 15 25 26 17 18 27 28 29 20 21 22 30 23
poly
11 20
................####
...............##...
........#########...
........#######.....
.......######.......
.....#######........
.....#####..........
.....####...........
.....##.............
.#####...

result:

ok good communication process (1000 test cases)

Test #33:

score: 100
Accepted
time: 38ms
memory: 4296kb

input:

32 1000
perm
1 6 2 7 3 4 8 11 12 13 15 16 19 20 21 5 23 9 10 24 14 25 26 28 30 17 31 32 18 22 27 29
triang
1 2 29
1 29 34
2 3 13
2 13 14
2 14 15
2 15 18
2 18 19
2 19 22
2 22 24
2 24 29
3 4 13
4 5 10
4 10 11
4 11 12
4 12 13
5 6 7
5 7 9
5 9 10
7 8 9
15 16 17
15 17 18
19 20 22
20 21 22
22 23 24
24 25 2...

output:

32 1000
triang
1 2 34
2 3 34
3 4 28
3 28 29
3 29 34
4 5 28
5 6 12
5 12 13
5 13 14
5 14 25
5 25 26
5 26 27
5 27 28
6 7 8
6 8 9
6 9 11
6 11 12
9 10 11
14 15 16
14 16 23
14 23 24
14 24 25
16 17 19
16 19 23
17 18 19
19 20 21
19 21 22
19 22 23
29 30 34
30 31 32
30 32 34
32 33 34
poly
15 18
.................

input:

32 1000
triang
1 2 34
2 3 34
3 4 28
3 28 29
3 29 34
4 5 28
5 6 12
5 12 13
5 13 14
5 14 25
5 25 26
5 26 27
5 27 28
6 7 8
6 8 9
6 9 11
6 11 12
9 10 11
14 15 16
14 16 23
14 23 24
14 24 25
16 17 19
16 19 23
17 18 19
19 20 21
19 21 22
19 22 23
29 30 34
30 31 32
30 32 34
32 33 34
poly
15 18
.................

output:

32 1000
perm
1 6 2 7 3 4 8 11 12 13 15 16 19 20 21 5 23 9 10 24 14 25 26 28 30 17 31 32 18 22 27 29
triang
1 2 29
1 29 34
2 3 13
2 13 14
2 14 15
2 15 18
2 18 19
2 19 22
2 22 24
2 24 29
3 4 13
4 5 10
4 10 11
4 11 12
4 12 13
5 6 7
5 7 9
5 9 10
7 8 9
15 16 17
15 17 18
19 20 22
20 21 22
22 23 24
24 25 2...

result:

ok good communication process (1000 test cases)

Test #34:

score: 100
Accepted
time: 37ms
memory: 4356kb

input:

33 1000
triang
1 2 28
1 28 35
2 3 28
3 4 5
3 5 23
3 23 24
3 24 28
5 6 7
5 7 23
7 8 16
7 16 19
7 19 20
7 20 23
8 9 10
8 10 15
8 15 16
10 11 13
10 13 15
11 12 13
13 14 15
16 17 18
16 18 19
20 21 22
20 22 23
24 25 26
24 26 28
26 27 28
28 29 31
28 31 35
29 30 31
31 32 33
31 33 35
33 34 35
perm
2 3 5 6 7...

output:

33 1000
perm
2 5 1 6 3 8 4 7 12 9 13 10 14 18 19 11 20 22 23 15 25 28 16 30 17 21 31 24 26 32 27 33 29
triang
1 2 3
1 3 35
3 4 34
3 34 35
4 5 6
4 6 7
4 7 8
4 8 9
4 9 10
4 10 11
4 11 12
4 12 13
4 13 14
4 14 15
4 15 16
4 16 17
4 17 18
4 18 19
4 19 20
4 20 21
4 21 22
4 22 23
4 23 24
4 24 25
4 25 26
4 2...

input:

33 1000
perm
2 5 1 6 3 8 4 7 12 9 13 10 14 18 19 11 20 22 23 15 25 28 16 30 17 21 31 24 26 32 27 33 29
triang
1 2 3
1 3 35
3 4 34
3 34 35
4 5 6
4 6 7
4 7 8
4 8 9
4 9 10
4 10 11
4 11 12
4 12 13
4 13 14
4 14 15
4 15 16
4 16 17
4 17 18
4 18 19
4 19 20
4 20 21
4 21 22
4 22 23
4 23 24
4 24 25
4 25 26
4 2...

output:

33 1000
triang
1 2 28
1 28 35
2 3 28
3 4 5
3 5 23
3 23 24
3 24 28
5 6 7
5 7 23
7 8 16
7 16 19
7 19 20
7 20 23
8 9 10
8 10 15
8 15 16
10 11 13
10 13 15
11 12 13
13 14 15
16 17 18
16 18 19
20 21 22
20 22 23
24 25 26
24 26 28
26 27 28
28 29 31
28 31 35
29 30 31
31 32 33
31 33 35
33 34 35
perm
2 3 5 6 7...

result:

ok good communication process (1000 test cases)

Test #35:

score: 100
Accepted
time: 34ms
memory: 4252kb

input:

34 1000
triang
1 2 36
2 3 36
3 4 34
3 34 36
4 5 6
4 6 32
4 32 33
4 33 34
6 7 8
6 8 10
6 10 11
6 11 12
6 12 13
6 13 32
8 9 10
13 14 18
13 18 32
14 15 18
15 16 18
16 17 18
18 19 20
18 20 22
18 22 23
18 23 32
20 21 22
23 24 32
24 25 32
25 26 31
25 31 32
26 27 29
26 29 30
26 30 31
27 28 29
34 35 36
poly...

output:

34 1000
perm
1 4 2 6 7 14 16 17 19 3 5 8 9 10 20 22 11 23 12 27 13 15 18 21 28 29 30 32 24 33 25 34 26 31
triang
1 2 5
1 5 33
1 33 36
2 3 5
3 4 5
5 6 33
6 7 10
6 10 32
6 32 33
7 8 9
7 9 10
10 11 32
11 12 13
11 13 14
11 14 18
11 18 21
11 21 22
11 22 32
14 15 17
14 17 18
15 16 17
18 19 20
18 20 21
22 ...

input:

34 1000
perm
1 4 2 6 7 14 16 17 19 3 5 8 9 10 20 22 11 23 12 27 13 15 18 21 28 29 30 32 24 33 25 34 26 31
triang
1 2 5
1 5 33
1 33 36
2 3 5
3 4 5
5 6 33
6 7 10
6 10 32
6 32 33
7 8 9
7 9 10
10 11 32
11 12 13
11 13 14
11 14 18
11 18 21
11 21 22
11 22 32
14 15 17
14 17 18
15 16 17
18 19 20
18 20 21
22 ...

output:

34 1000
triang
1 2 36
2 3 36
3 4 34
3 34 36
4 5 6
4 6 32
4 32 33
4 33 34
6 7 8
6 8 10
6 10 11
6 11 12
6 12 13
6 13 32
8 9 10
13 14 18
13 18 32
14 15 18
15 16 18
16 17 18
18 19 20
18 20 22
18 22 23
18 23 32
20 21 22
23 24 32
24 25 32
25 26 31
25 31 32
26 27 29
26 29 30
26 30 31
27 28 29
34 35 36
poly...

result:

ok good communication process (1000 test cases)

Test #36:

score: 100
Accepted
time: 39ms
memory: 4524kb

input:

35 1000
poly
19 17
.............####
..........#######
..........######.
..........####...
..........####...
.........#####...
.........#####...
.........#####...
.........#####...
........####.....
........####.....
........##.......
......####.......
.#########.......
##...............
#.............

output:

35 1000
perm
2 6 1 3 7 9 11 4 14 16 17 21 23 5 24 8 10 25 27 28 30 12 13 15 18 31 19 20 32 33 22 26 34 35 29
perm
2 3 1 6 8 4 10 11 16 5 7 17 9 20 21 12 23 13 14 15 25 18 19 22 27 30 31 32 33 24 26 28 35 29 34
perm
1 11 2 3 12 14 4 5 6 15 17 20 21 7 8 9 22 24 10 25 13 26 16 27 18 29 30 31 19 23 28 3...

input:

35 1000
perm
2 6 1 3 7 9 11 4 14 16 17 21 23 5 24 8 10 25 27 28 30 12 13 15 18 31 19 20 32 33 22 26 34 35 29
perm
2 3 1 6 8 4 10 11 16 5 7 17 9 20 21 12 23 13 14 15 25 18 19 22 27 30 31 32 33 24 26 28 35 29 34
perm
1 11 2 3 12 14 4 5 6 15 17 20 21 7 8 9 22 24 10 25 13 26 16 27 18 29 30 31 19 23 28 3...

output:

35 1000
poly
19 17
.............####
..........#######
..........######.
..........####...
..........####...
.........#####...
.........#####...
.........#####...
.........#####...
........####.....
........####.....
........##.......
......####.......
.#########.......
##...............
#.............

result:

ok good communication process (1000 test cases)

Test #37:

score: 100
Accepted
time: 39ms
memory: 4292kb

input:

35 1000
triang
1 2 6
1 6 9
1 9 31
1 31 37
2 3 6
3 4 6
4 5 6
6 7 8
6 8 9
9 10 12
9 12 31
10 11 12
12 13 14
12 14 30
12 30 31
14 15 17
14 17 18
14 18 23
14 23 30
15 16 17
18 19 22
18 22 23
19 20 21
19 21 22
23 24 26
23 26 27
23 27 30
24 25 26
27 28 29
27 29 30
31 32 33
31 33 34
31 34 35
31 35 36
31 36...

output:

35 1000
perm
4 5 6 7 8 9 1 11 15 16 2 17 19 3 10 21 23 24 12 13 25 27 14 18 28 20 30 22 26 31 32 29 35 33 34
poly
17 19
..............#####
..............#####
........########...
.......#########...
......##########...
......##########...
....############...
...##########......
.#########.........
...

input:

35 1000
perm
4 5 6 7 8 9 1 11 15 16 2 17 19 3 10 21 23 24 12 13 25 27 14 18 28 20 30 22 26 31 32 29 35 33 34
poly
17 19
..............#####
..............#####
........########...
.......#########...
......##########...
......##########...
....############...
...##########......
.#########.........
...

output:

35 1000
triang
1 2 6
1 6 9
1 9 31
1 31 37
2 3 6
3 4 6
4 5 6
6 7 8
6 8 9
9 10 12
9 12 31
10 11 12
12 13 14
12 14 30
12 30 31
14 15 17
14 17 18
14 18 23
14 23 30
15 16 17
18 19 22
18 22 23
19 20 21
19 21 22
23 24 26
23 26 27
23 27 30
24 25 26
27 28 29
27 29 30
31 32 33
31 33 34
31 34 35
31 35 36
31 36...

result:

ok good communication process (1000 test cases)

Test #38:

score: 100
Accepted
time: 39ms
memory: 4348kb

input:

35 1000
perm
1 2 6 3 4 10 11 5 7 13 16 8 9 12 17 14 15 21 22 24 18 19 27 20 23 31 25 26 32 35 28 29 30 33 34
triang
1 2 4
1 4 31
1 31 32
1 32 35
1 35 37
2 3 4
4 5 6
4 6 7
4 7 8
4 8 31
8 9 31
9 10 30
9 30 31
10 11 30
11 12 15
11 15 16
11 16 17
11 17 28
11 28 29
11 29 30
12 13 15
13 14 15
17 18 19
17 ...

output:

35 1000
poly
15 21
..................###
................#####
..............######.
.............#######.
.............#######.
..........#########..
........#########....
......##########.....
......######.........
...#########.........
...########..........
...#######...........
..####..............

input:

35 1000
poly
15 21
..................###
................#####
..............######.
.............#######.
.............#######.
..........#########..
........#########....
......##########.....
......######.........
...#########.........
...########..........
...#######...........
..####..............

output:

35 1000
perm
1 2 6 3 4 10 11 5 7 13 16 8 9 12 17 14 15 21 22 24 18 19 27 20 23 31 25 26 32 35 28 29 30 33 34
triang
1 2 4
1 4 31
1 31 32
1 32 35
1 35 37
2 3 4
4 5 6
4 6 7
4 7 8
4 8 31
8 9 31
9 10 30
9 30 31
10 11 30
11 12 15
11 15 16
11 16 17
11 17 28
11 28 29
11 29 30
12 13 15
13 14 15
17 18 19
17 ...

result:

ok good communication process (1000 test cases)

Test #39:

score: 100
Accepted
time: 35ms
memory: 4576kb

input:

35 1000
triang
1 2 33
1 33 34
1 34 37
2 3 29
2 29 30
2 30 33
3 4 11
3 11 29
4 5 6
4 6 7
4 7 9
4 9 11
7 8 9
9 10 11
11 12 13
11 13 29
13 14 15
13 15 18
13 18 29
15 16 17
15 17 18
18 19 20
18 20 27
18 27 28
18 28 29
20 21 22
20 22 23
20 23 25
20 25 26
20 26 27
23 24 25
30 31 32
30 32 33
34 35 36
34 36...

output:

35 1000
poly
17 19
..................#
...............####
.............######
.............######
............#####..
............#####..
............#####..
.......#########...
.......#########...
.......#########...
...#############...
..##############...
..########.........
..######...........
....

input:

35 1000
poly
17 19
..................#
...............####
.............######
.............######
............#####..
............#####..
............#####..
.......#########...
.......#########...
.......#########...
...#############...
..##############...
..########.........
..######...........
....

output:

35 1000
triang
1 2 33
1 33 34
1 34 37
2 3 29
2 29 30
2 30 33
3 4 11
3 11 29
4 5 6
4 6 7
4 7 9
4 9 11
7 8 9
9 10 11
11 12 13
11 13 29
13 14 15
13 15 18
13 18 29
15 16 17
15 17 18
18 19 20
18 20 27
18 27 28
18 28 29
20 21 22
20 22 23
20 23 25
20 25 26
20 26 27
23 24 25
30 31 32
30 32 33
34 35 36
34 36...

result:

ok good communication process (1000 test cases)

Test #40:

score: 100
Accepted
time: 36ms
memory: 4364kb

input:

35 1000
poly
18 18
................##
...............###
...............#..
...............#..
..............##..
............###...
...........####...
.........####.....
......######......
......#####.......
..#########.......
..#########.......
.#######..........
.#####............
######............

output:

35 1000
perm
6 9 1 2 12 3 13 14 16 4 5 7 8 22 10 23 25 26 11 28 29 30 15 31 17 18 32 19 33 20 34 21 24 35 27
poly
22 14
.............#
...........###
...........##.
...........##.
......#######.
......#######.
.....########.
.....########.
.....########.
.....########.
.....#####....
.....#####....
...

input:

35 1000
perm
6 9 1 2 12 3 13 14 16 4 5 7 8 22 10 23 25 26 11 28 29 30 15 31 17 18 32 19 33 20 34 21 24 35 27
poly
22 14
.............#
...........###
...........##.
...........##.
......#######.
......#######.
.....########.
.....########.
.....########.
.....########.
.....#####....
.....#####....
...

output:

35 1000
poly
18 18
................##
...............###
...............#..
...............#..
..............##..
............###...
...........####...
.........####.....
......######......
......#####.......
..#########.......
..#########.......
.#######..........
.#####............
######............

result:

ok good communication process (1000 test cases)

Test #41:

score: 100
Accepted
time: 35ms
memory: 4284kb

input:

35 1000
poly
19 17
................#
................#
................#
...............##
..............###
............#####
............#####
............###..
...........###...
.....#########...
....#######......
....#######......
....#####........
...#####.........
..######.........
..#####.......

output:

35 1000
triang
1 2 4
1 4 5
1 5 37
2 3 4
5 6 37
6 7 37
7 8 9
7 9 33
7 33 36
7 36 37
9 10 33
10 11 33
11 12 14
11 14 33
12 13 14
14 15 16
14 16 29
14 29 32
14 32 33
16 17 25
16 25 27
16 27 28
16 28 29
17 18 20
17 20 21
17 21 22
17 22 23
17 23 24
17 24 25
18 19 20
25 26 27
29 30 32
30 31 32
33 34 36
34...

input:

35 1000
triang
1 2 4
1 4 5
1 5 37
2 3 4
5 6 37
6 7 37
7 8 9
7 9 33
7 33 36
7 36 37
9 10 33
10 11 33
11 12 14
11 14 33
12 13 14
14 15 16
14 16 29
14 29 32
14 32 33
16 17 25
16 25 27
16 27 28
16 28 29
17 18 20
17 20 21
17 21 22
17 22 23
17 23 24
17 24 25
18 19 20
25 26 27
29 30 32
30 31 32
33 34 36
34...

output:

35 1000
poly
19 17
................#
................#
................#
...............##
..............###
............#####
............#####
............###..
...........###...
.....#########...
....#######......
....#######......
....#####........
...#####.........
..######.........
..#####.......

result:

ok good communication process (1000 test cases)

Test #42:

score: 100
Accepted
time: 35ms
memory: 4296kb

input:

35 1000
poly
12 24
...............#########
...........#############
...........##########...
...........######.......
..........#######.......
.........#######........
........#######.........
.......#######..........
....########............
...########.............
..#######...............
######...

output:

35 1000
perm
1 2 6 13 14 3 4 15 17 5 19 21 7 22 27 28 8 30 31 33 34 9 10 11 35 12 16 18 20 23 24 25 26 29 32
perm
1 2 4 5 3 9 11 6 14 7 16 8 17 10 26 12 13 15 18 19 20 27 21 22 23 29 24 25 30 32 28 31 34 33 35
poly
18 18
................##
................##
...............###
..............###.
......

input:

35 1000
perm
1 2 6 13 14 3 4 15 17 5 19 21 7 22 27 28 8 30 31 33 34 9 10 11 35 12 16 18 20 23 24 25 26 29 32
perm
1 2 4 5 3 9 11 6 14 7 16 8 17 10 26 12 13 15 18 19 20 27 21 22 23 29 24 25 30 32 28 31 34 33 35
poly
18 18
................##
................##
...............###
..............###.
......

output:

35 1000
poly
12 24
...............#########
...........#############
...........##########...
...........######.......
..........#######.......
.........#######........
........#######.........
.......#######..........
....########............
...########.............
..#######...............
######...

result:

ok good communication process (1000 test cases)

Test #43:

score: 100
Accepted
time: 39ms
memory: 4280kb

input:

35 1000
triang
1 2 13
1 13 36
1 36 37
2 3 13
3 4 9
3 9 12
3 12 13
4 5 6
4 6 9
6 7 9
7 8 9
9 10 11
9 11 12
13 14 36
14 15 16
14 16 29
14 29 36
16 17 18
16 18 29
18 19 29
19 20 22
19 22 28
19 28 29
20 21 22
22 23 27
22 27 28
23 24 27
24 25 27
25 26 27
29 30 33
29 33 36
30 31 33
31 32 33
33 34 35
33 35...

output:

35 1000
perm
3 1 7 8 2 11 4 5 6 15 17 21 9 10 12 13 23 14 16 18 24 19 25 20 22 27 29 30 26 34 28 31 35 32 33
poly
17 19
..................#
..............#####
..............####.
..............###..
.............####..
.............###...
............####...
.....###########...
....##########.....
...

input:

35 1000
perm
3 1 7 8 2 11 4 5 6 15 17 21 9 10 12 13 23 14 16 18 24 19 25 20 22 27 29 30 26 34 28 31 35 32 33
poly
17 19
..................#
..............#####
..............####.
..............###..
.............####..
.............###...
............####...
.....###########...
....##########.....
...

output:

35 1000
triang
1 2 13
1 13 36
1 36 37
2 3 13
3 4 9
3 9 12
3 12 13
4 5 6
4 6 9
6 7 9
7 8 9
9 10 11
9 11 12
13 14 36
14 15 16
14 16 29
14 29 36
16 17 18
16 18 29
18 19 29
19 20 22
19 22 28
19 28 29
20 21 22
22 23 27
22 27 28
23 24 27
24 25 27
25 26 27
29 30 33
29 33 36
30 31 33
31 32 33
33 34 35
33 35...

result:

ok good communication process (1000 test cases)

Test #44:

score: 100
Accepted
time: 39ms
memory: 4288kb

input:

35 1000
poly
16 20
.................###
.................###
................###.
..............####..
.........########...
.........########...
.....############...
.....############...
.....###########....
.....#########......
...##########.......
...#########........
...######...........
.######....

output:

35 1000
perm
2 1 5 3 6 8 11 4 7 9 10 12 14 15 19 13 16 20 21 25 26 28 17 18 29 30 22 31 34 23 24 35 27 32 33
triang
1 2 36
1 36 37
2 3 4
2 4 32
2 32 34
2 34 35
2 35 36
4 5 26
4 26 32
5 6 23
5 23 26
6 7 8
6 8 23
8 9 10
8 10 11
8 11 23
11 12 16
11 16 23
12 13 15
12 15 16
13 14 15
16 17 22
16 22 23
17 ...

input:

35 1000
perm
2 1 5 3 6 8 11 4 7 9 10 12 14 15 19 13 16 20 21 25 26 28 17 18 29 30 22 31 34 23 24 35 27 32 33
triang
1 2 36
1 36 37
2 3 4
2 4 32
2 32 34
2 34 35
2 35 36
4 5 26
4 26 32
5 6 23
5 23 26
6 7 8
6 8 23
8 9 10
8 10 11
8 11 23
11 12 16
11 16 23
12 13 15
12 15 16
13 14 15
16 17 22
16 22 23
17 ...

output:

35 1000
poly
16 20
.................###
.................###
................###.
..............####..
.........########...
.........########...
.....############...
.....############...
.....###########....
.....#########......
...##########.......
...#########........
...######...........
.######....

result:

ok good communication process (1000 test cases)

Test #45:

score: 100
Accepted
time: 39ms
memory: 4580kb

input:

35 1000
perm
3 1 4 5 8 9 2 11 6 15 17 20 7 22 10 23 25 12 28 13 31 33 14 16 18 34 19 35 21 24 26 27 29 30 32
perm
4 1 7 2 3 8 5 13 18 19 20 6 9 21 24 10 26 28 11 12 14 29 31 15 32 33 16 17 34 22 23 25 35 27 30
poly
18 18
.................#
...............###
............######
............######
......

output:

35 1000
triang
1 2 3
1 3 36
1 36 37
3 4 34
3 34 35
3 35 36
4 5 29
4 29 31
4 31 34
5 6 29
6 7 29
7 8 28
7 28 29
8 9 27
8 27 28
9 10 11
9 11 20
9 20 22
9 22 23
9 23 25
9 25 27
11 12 13
11 13 18
11 18 20
13 14 18
14 15 17
14 17 18
15 16 17
18 19 20
20 21 22
23 24 25
25 26 27
29 30 31
31 32 33
31 33 34
...

input:

35 1000
triang
1 2 3
1 3 36
1 36 37
3 4 34
3 34 35
3 35 36
4 5 29
4 29 31
4 31 34
5 6 29
6 7 29
7 8 28
7 28 29
8 9 27
8 27 28
9 10 11
9 11 20
9 20 22
9 22 23
9 23 25
9 25 27
11 12 13
11 13 18
11 18 20
13 14 18
14 15 17
14 17 18
15 16 17
18 19 20
20 21 22
23 24 25
25 26 27
29 30 31
31 32 33
31 33 34
...

output:

35 1000
perm
3 1 4 5 8 9 2 11 6 15 17 20 7 22 10 23 25 12 28 13 31 33 14 16 18 34 19 35 21 24 26 27 29 30 32
perm
4 1 7 2 3 8 5 13 18 19 20 6 9 21 24 10 26 28 11 12 14 29 31 15 32 33 16 17 34 22 23 25 35 27 30
poly
18 18
.................#
...............###
............######
............######
......

result:

ok good communication process (1000 test cases)