Submission #337993


Source Code Expand

#include <iostream>
#include <cstdio>
#include <vector>
#include <set>
#include <map>
#include <queue>
#include <deque>
#include <stack>
#include <algorithm>
#include <cstring>
#include <functional>
#include <cmath>
#include <utility>
#include <complex>
using namespace std;
#define rep(i,n) for(int i=0;i<(n);++i)
#define rep1(i,n) for(int i=1;i<=(n);++i)
#define all(c) (c).begin(),(c).end()
#define fs first
#define sc second
#define pb push_back
#define show(x) cout << #x << " " << x << endl
const int MAX_V=400;
int V;				//substitute!!
vector<int> G[MAX_V];
int match[MAX_V];
bool used[MAX_V];
void add_edge(int u,int v){
	G[u].push_back(v);
	G[v].push_back(u);
}
bool dfs(int v){
	used[v]=true;
	rep(i,G[v].size()){
		int u=G[v][i],w=match[u];
		if(w<0 || (!used[w] && dfs(w))){
			match[v]=u;
			match[u]=v;
			return true;
		}
	}
	return false;
}
int nibu(){
	int res=0;
	memset(match,-1,sizeof(match));
	rep(v,V){
		if(match[v]<0){
			memset(used,0,sizeof(used));
			if(dfs(v)) res++;
		}
	}
	return res;
}
int N;
string s[200];
vector<int> nums;
bool solve(){
	cin>>N;
	V=2*N;
	rep(i,N) cin>>s[i];
	rep(i,N) nums.pb(s[i].size());
	sort(all(nums));
	int mn=1e9;
	rep(i,N) mn=min(mn,nums[i]-i);
	rep(c,26){
		for(int i=0;i<mn;){
			rep(j,V) G[j].clear();
			rep(j,N) rep(k,N){
				if(s[j].size()>k+i&&s[j][k+i]=='a'+c) add_edge(j,k+N);
			}
			int a=nibu();
			if(a==N) return true;
			i+=N-a;
		}
	}
	return false;
}
int main(){
	if(solve()) puts("YES");
	else puts("NO");
}

Submission Info

Submission Time
Task B - コメント
User sigma425
Language C++ (G++ 4.6.4)
Score 90
Code Size 1566 Byte
Status AC
Exec Time 258 ms
Memory 1068 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 60 / 60
Status
AC × 2
AC × 18
AC × 44
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
Subtask1 sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt
Subtask2 subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt, subtask2_26.txt, subtask2_27.txt, subtask2_28.txt
Case Name Status Exec Time Memory
sample_01.txt AC 23 ms 808 KB
sample_02.txt AC 22 ms 924 KB
subtask1_01.txt AC 22 ms 800 KB
subtask1_02.txt AC 23 ms 804 KB
subtask1_03.txt AC 23 ms 804 KB
subtask1_04.txt AC 23 ms 804 KB
subtask1_05.txt AC 23 ms 932 KB
subtask1_06.txt AC 23 ms 920 KB
subtask1_07.txt AC 24 ms 920 KB
subtask1_08.txt AC 22 ms 932 KB
subtask1_09.txt AC 24 ms 800 KB
subtask1_10.txt AC 23 ms 804 KB
subtask1_11.txt AC 22 ms 924 KB
subtask1_12.txt AC 23 ms 800 KB
subtask1_13.txt AC 22 ms 804 KB
subtask1_14.txt AC 25 ms 920 KB
subtask1_15.txt AC 24 ms 928 KB
subtask1_16.txt AC 22 ms 796 KB
subtask2_01.txt AC 43 ms 924 KB
subtask2_02.txt AC 164 ms 936 KB
subtask2_03.txt AC 33 ms 940 KB
subtask2_04.txt AC 42 ms 928 KB
subtask2_05.txt AC 29 ms 932 KB
subtask2_06.txt AC 29 ms 940 KB
subtask2_07.txt AC 28 ms 936 KB
subtask2_08.txt AC 50 ms 932 KB
subtask2_09.txt AC 168 ms 936 KB
subtask2_10.txt AC 33 ms 884 KB
subtask2_11.txt AC 151 ms 932 KB
subtask2_12.txt AC 64 ms 932 KB
subtask2_13.txt AC 38 ms 920 KB
subtask2_14.txt AC 166 ms 1056 KB
subtask2_15.txt AC 47 ms 1048 KB
subtask2_16.txt AC 90 ms 924 KB
subtask2_17.txt AC 72 ms 928 KB
subtask2_18.txt AC 116 ms 1048 KB
subtask2_19.txt AC 82 ms 1068 KB
subtask2_20.txt AC 258 ms 936 KB
subtask2_21.txt AC 85 ms 924 KB
subtask2_22.txt AC 89 ms 940 KB
subtask2_23.txt AC 142 ms 1056 KB
subtask2_24.txt AC 55 ms 936 KB
subtask2_25.txt AC 88 ms 932 KB
subtask2_26.txt AC 49 ms 932 KB
subtask2_27.txt AC 165 ms 992 KB
subtask2_28.txt AC 180 ms 1048 KB