Submission #1131199


Source Code Expand

#include <iostream>
#include <iomanip>
#include <string>
#include <vector>
#include <queue>
#include <algorithm>
#include <utility>
#include <cmath>
#include <map>
#include <set>
#include <stack>
#include <cstdio>
#include <cstdlib>
#include <cstring>

#define INF_LL 1e18
#define INF 1e9

#define REP(i, n) for(int i = 0;i < (n);i++)
#define FOR(i, a, b) for(int i = (a);i < (b);i++)
#define all(x) x.begin(),x.end()

using namespace std;

using ll = long long;
using PII = pair<int, int>;

template<typename T>
void chmax(T &a, T &b){
	a = max(a, b);
}

template<typename T>
void chmin(T &a, T &b){
	a = min(a, b);
}

class Union_find{
private:
	vector<int> par;
	vector<int> rank;
	int n;

public:
	Union_find(int a){
		n = a;
		for(int i = 0;i < n;i++){
			par.push_back(i);
			rank.push_back(0);
		}
	}

	int find(int x){
		if(par[x] == x){
			return x;
		}else{
			return par[x] = find(par[x]);
		}
	}

	void unite(int x, int y){
		x = find(x);
		y = find(y);
		if(x == y) return;

		if(rank[x] < rank[y]){
			par[x] = y;
		}else{
			par[y] = x;
			if(rank[x] == rank[y]) rank[x]++;
		}
	}

	bool same(int x, int y){
		return find(x) == find(y);
	}
};

int main(void){
	cin.tie(0);
	ios::sync_with_stdio(false);
	int N;
	vector<string> f;
	cin >> N;
	REP(i, N){
		string s;
		cin >> s;
		f.push_back(s);
	}
	queue<pair<int, vector<string> > > q;
	q.push({0, f});
	map<vector<string>, bool> used;
	while(q.size()){
		int cnt = q.front().first;
		f = q.front().second; q.pop();
		bool ok = false, end = true;
		REP(i, f.size()){
			REP(j, f[i].size()){
				if(f[i][j] == '.')
					end = false;
				else
					ok = true;
			}
		}
		if(end){
			cout << cnt << endl;
			return 0;
		}
		if(!ok || used[f]){
			continue;
		}
		used[f] = true;
		REP(i, f.size()){
			REP(j, f[i].size()){
				vector<string> tmp = f;
				REP(k, f.size()) tmp[k][j] = f[i][k];
				q.push({cnt+1, tmp});
			}
		}
	}
	cout << -1 << endl;
}

Submission Info

Submission Time
Task B - Row to Column
User maze1230
Language C++14 (GCC 5.4.1)
Score 300
Code Size 2038 Byte
Status TLE
Exec Time 2242 ms
Memory 892 KB

Judge Result

Set Name Sample Subtask All
Score / Max Score 0 / 0 300 / 300 0 / 1000
Status
AC × 5
AC × 20
AC × 22
TLE × 21
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt
Subtask 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 2_00.txt, 2_01.txt, 2_02.txt, 2_03.txt, 2_04.txt, 2_05.txt, 2_06.txt, 2_07.txt, 2_08.txt, 2_09.txt, 2_10.txt, 2_11.txt, 2_12.txt, 2_13.txt, 2_14.txt, 2_15.txt, 2_16.txt, 2_17.txt, 2_18.txt, 2_19.txt, 2_20.txt, 2_21.txt, 2_22.txt
Case Name Status Exec Time Memory
0_00.txt AC 6 ms 892 KB
0_01.txt AC 1 ms 256 KB
0_02.txt AC 1 ms 256 KB
0_03.txt AC 1 ms 256 KB
0_04.txt AC 3 ms 640 KB
1_00.txt AC 1 ms 256 KB
1_01.txt AC 1 ms 256 KB
1_02.txt AC 2 ms 640 KB
1_03.txt AC 3 ms 640 KB
1_04.txt AC 3 ms 640 KB
1_05.txt AC 3 ms 640 KB
1_06.txt AC 3 ms 768 KB
1_07.txt AC 3 ms 768 KB
1_08.txt AC 1 ms 384 KB
1_09.txt AC 2 ms 384 KB
1_10.txt AC 4 ms 640 KB
1_11.txt AC 1 ms 384 KB
1_12.txt AC 1 ms 256 KB
1_13.txt AC 1 ms 256 KB
1_14.txt AC 4 ms 768 KB
2_00.txt AC 2 ms 512 KB
2_01.txt AC 2 ms 512 KB
2_02.txt TLE 2240 ms -855424 KB
2_03.txt TLE 2242 ms -840832 KB
2_04.txt TLE 2241 ms -849920 KB
2_05.txt TLE 2241 ms -863360 KB
2_06.txt TLE 2241 ms -850688 KB
2_07.txt TLE 2234 ms -1008128 KB
2_08.txt TLE 2240 ms -872448 KB
2_09.txt TLE 2239 ms -909568 KB
2_10.txt TLE 2240 ms -875264 KB
2_11.txt TLE 2239 ms -897664 KB
2_12.txt TLE 2240 ms -885504 KB
2_13.txt TLE 2237 ms -927360 KB
2_14.txt TLE 2238 ms -915584 KB
2_15.txt TLE 2238 ms -933504 KB
2_16.txt TLE 2238 ms -930560 KB
2_17.txt TLE 2237 ms -940672 KB
2_18.txt TLE 2235 ms -996992 KB
2_19.txt TLE 2240 ms -888448 KB
2_20.txt TLE 2235 ms -1001088 KB
2_21.txt TLE 2233 ms -1048832 KB
2_22.txt TLE 2240 ms -875392 KB