Submission #67858
Source Code Expand
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <climits>
#include <cfloat>
#include <map>
#include <utility>
#include <set>
#include <iostream>
#include <fstream>
#include <memory>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <sstream>
#include <complex>
#include <stack>
#include <queue>
#include <cstring>
using namespace std;
static const double EPS = 1e-10;
typedef long long ll;
int g[1005][1005];
int diff(string s1, string s2){
int cnt=0;
for(int i=0;i<s1.length();++i){
if(s1[i]!=s2[i])++cnt;
}
if(cnt==1)return 1;
return 0;
}
int main(){
memset(g,0,sizeof(g));
string first,last;
cin>>first>>last;
if(first==last){
cout<<0<<endl;
cout<<first<<endl;
cout<<first<<endl;
return 0;
}
int N;
cin>>N;
vector <string> in;
in.push_back(first);
for(int i=0;i<N;++i){
string s;
cin>>s;
in.push_back(s);
}
in.push_back(last);
for(int i=0;i<in.size();++i){
for(int j=i+1;j<in.size();++j){
if(diff(in[i],in[j])){
g[i][j]=1;
g[j][i]=1;
}
}
}
int sz=in.size();
queue < pair<int, vector<int> > > q;
vector <int> tmp;
q.push(pair<int,vector<int> >(0,tmp));
int len[in.size()];
for(int i=0;i<sz;++i)len[i]=INT_MAX;
len[0]=0;
vector <int> result;
while(!q.empty()){
int pos=(q.front()).first;
vector <int> path=(q.front()).second;
if(pos==sz-1)result=path;
q.pop();
vector <int> nxt=path;
nxt.push_back(pos);
for(int j=0;j<sz;++j){
if(g[pos][j]){
if(len[j]>nxt.size()){
q.push(pair<int,vector<int> >
(j,nxt));
len[j]=nxt.size();
}
}
}
}
if(len[in.size()-1]==INT_MAX){
cout<<-1<<endl;
return 0;
}
cout<<result.size()-1<<endl;
for(int i=0;i<result.size();++i){
cout<<in[result[i]]<<endl;
}
cout<<last<<endl;
cout<<endl;
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - ダブレット |
| User | kaiy |
| Language | C++ (G++ 4.6.4) |
| Score | 100 |
| Code Size | 1912 Byte |
| Status | AC |
| Exec Time | 184 ms |
| Memory | 4796 KiB |
Judge Result
| Set Name | All | ||
|---|---|---|---|
| Score / Max Score | 100 / 100 | ||
| Status |
|
| Set Name | Test Cases |
|---|---|
| All | 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 01_rand_00.txt, 01_rand_01.txt, 01_rand_02.txt, 01_rand_03.txt, 01_rand_04.txt, 01_rand_05.txt, 01_rand_06.txt, 01_rand_07.txt, 01_rand_08.txt, 01_rand_09.txt, 01_rand_10.txt, 01_rand_11.txt, 01_rand_12.txt, 01_rand_13.txt, 01_rand_14.txt, 01_rand_15.txt, 01_rand_16.txt, 01_rand_17.txt, 01_rand_18.txt, 01_rand_19.txt, 02_maxrand_00.txt, 02_maxrand_01.txt, 02_maxrand_02.txt, 02_maxrand_03.txt, 02_maxrand_04.txt, 02_maxrand_05.txt, 02_maxrand_06.txt, 02_maxrand_07.txt, 02_maxrand_08.txt, 02_maxrand_09.txt, 02_maxrand_10.txt, 02_maxrand_11.txt, 02_maxrand_12.txt, 02_maxrand_13.txt, 02_maxrand_14.txt, 02_maxrand_15.txt, 02_maxrand_16.txt, 02_maxrand_17.txt, 02_maxrand_18.txt, 02_maxrand_19.txt, 03_long_00.txt, 03_long_01.txt, 03_long_02.txt, 03_long_03.txt, 03_long_04.txt, 03_long_05.txt, 03_long_06.txt, 03_long_07.txt, 03_long_08.txt, 03_long_09.txt, 03_long_10.txt, 03_long_11.txt, 03_long_12.txt, 03_long_13.txt, 03_long_14.txt, 03_long_15.txt, 03_long_16.txt, 03_long_17.txt, 03_long_18.txt, 03_long_19.txt, 04_manygroup_00.txt, 04_manygroup_01.txt, 04_manygroup_02.txt, 04_manygroup_03.txt, 04_manygroup_04.txt, 04_manygroup_05.txt, 04_manygroup_06.txt, 04_manygroup_07.txt, 04_manygroup_08.txt, 04_manygroup_09.txt, 04_manygroup_10.txt, 04_manygroup_11.txt, 04_manygroup_12.txt, 04_manygroup_13.txt, 04_manygroup_14.txt, 04_manygroup_15.txt, 04_manygroup_16.txt, 04_manygroup_17.txt, 04_manygroup_18.txt, 04_manygroup_19.txt, 10_min_01.txt, 10_min_02.txt, 10_min_03.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_01.txt | AC | 27 ms | 4752 KiB |
| 00_sample_02.txt | AC | 27 ms | 4624 KiB |
| 00_sample_03.txt | AC | 26 ms | 4664 KiB |
| 01_rand_00.txt | AC | 154 ms | 4664 KiB |
| 01_rand_01.txt | AC | 30 ms | 4664 KiB |
| 01_rand_02.txt | AC | 130 ms | 4752 KiB |
| 01_rand_03.txt | AC | 33 ms | 4664 KiB |
| 01_rand_04.txt | AC | 69 ms | 4656 KiB |
| 01_rand_05.txt | AC | 26 ms | 4796 KiB |
| 01_rand_06.txt | AC | 71 ms | 4752 KiB |
| 01_rand_07.txt | AC | 48 ms | 4748 KiB |
| 01_rand_08.txt | AC | 32 ms | 4752 KiB |
| 01_rand_09.txt | AC | 53 ms | 4668 KiB |
| 01_rand_10.txt | AC | 115 ms | 4764 KiB |
| 01_rand_11.txt | AC | 184 ms | 4656 KiB |
| 01_rand_12.txt | AC | 87 ms | 4660 KiB |
| 01_rand_13.txt | AC | 153 ms | 4676 KiB |
| 01_rand_14.txt | AC | 120 ms | 4784 KiB |
| 01_rand_15.txt | AC | 51 ms | 4668 KiB |
| 01_rand_16.txt | AC | 100 ms | 4672 KiB |
| 01_rand_17.txt | AC | 76 ms | 4760 KiB |
| 01_rand_18.txt | AC | 29 ms | 4760 KiB |
| 01_rand_19.txt | AC | 113 ms | 4668 KiB |
| 02_maxrand_00.txt | AC | 163 ms | 4752 KiB |
| 02_maxrand_01.txt | AC | 169 ms | 4756 KiB |
| 02_maxrand_02.txt | AC | 118 ms | 4780 KiB |
| 02_maxrand_03.txt | AC | 183 ms | 4792 KiB |
| 02_maxrand_04.txt | AC | 133 ms | 4744 KiB |
| 02_maxrand_05.txt | AC | 156 ms | 4780 KiB |
| 02_maxrand_06.txt | AC | 166 ms | 4760 KiB |
| 02_maxrand_07.txt | AC | 171 ms | 4752 KiB |
| 02_maxrand_08.txt | AC | 177 ms | 4760 KiB |
| 02_maxrand_09.txt | AC | 150 ms | 4748 KiB |
| 02_maxrand_10.txt | AC | 172 ms | 4788 KiB |
| 02_maxrand_11.txt | AC | 154 ms | 4788 KiB |
| 02_maxrand_12.txt | AC | 161 ms | 4784 KiB |
| 02_maxrand_13.txt | AC | 152 ms | 4756 KiB |
| 02_maxrand_14.txt | AC | 155 ms | 4660 KiB |
| 02_maxrand_15.txt | AC | 162 ms | 4752 KiB |
| 02_maxrand_16.txt | AC | 174 ms | 4756 KiB |
| 02_maxrand_17.txt | AC | 131 ms | 4660 KiB |
| 02_maxrand_18.txt | AC | 157 ms | 4768 KiB |
| 02_maxrand_19.txt | AC | 132 ms | 4668 KiB |
| 03_long_00.txt | AC | 169 ms | 4792 KiB |
| 03_long_01.txt | AC | 158 ms | 4788 KiB |
| 03_long_02.txt | AC | 132 ms | 4660 KiB |
| 03_long_03.txt | AC | 131 ms | 4752 KiB |
| 03_long_04.txt | AC | 151 ms | 4752 KiB |
| 03_long_05.txt | AC | 142 ms | 4656 KiB |
| 03_long_06.txt | AC | 128 ms | 4784 KiB |
| 03_long_07.txt | AC | 149 ms | 4664 KiB |
| 03_long_08.txt | AC | 147 ms | 4776 KiB |
| 03_long_09.txt | AC | 143 ms | 4676 KiB |
| 03_long_10.txt | AC | 138 ms | 4660 KiB |
| 03_long_11.txt | AC | 166 ms | 4792 KiB |
| 03_long_12.txt | AC | 121 ms | 4796 KiB |
| 03_long_13.txt | AC | 134 ms | 4760 KiB |
| 03_long_14.txt | AC | 162 ms | 4792 KiB |
| 03_long_15.txt | AC | 164 ms | 4788 KiB |
| 03_long_16.txt | AC | 156 ms | 4784 KiB |
| 03_long_17.txt | AC | 133 ms | 4664 KiB |
| 03_long_18.txt | AC | 131 ms | 4752 KiB |
| 03_long_19.txt | AC | 136 ms | 4760 KiB |
| 04_manygroup_00.txt | AC | 160 ms | 4660 KiB |
| 04_manygroup_01.txt | AC | 173 ms | 4752 KiB |
| 04_manygroup_02.txt | AC | 140 ms | 4756 KiB |
| 04_manygroup_03.txt | AC | 145 ms | 4660 KiB |
| 04_manygroup_04.txt | AC | 151 ms | 4728 KiB |
| 04_manygroup_05.txt | AC | 149 ms | 4660 KiB |
| 04_manygroup_06.txt | AC | 127 ms | 4752 KiB |
| 04_manygroup_07.txt | AC | 143 ms | 4752 KiB |
| 04_manygroup_08.txt | AC | 141 ms | 4760 KiB |
| 04_manygroup_09.txt | AC | 134 ms | 4656 KiB |
| 04_manygroup_10.txt | AC | 175 ms | 4664 KiB |
| 04_manygroup_11.txt | AC | 165 ms | 4752 KiB |
| 04_manygroup_12.txt | AC | 171 ms | 4764 KiB |
| 04_manygroup_13.txt | AC | 154 ms | 4752 KiB |
| 04_manygroup_14.txt | AC | 169 ms | 4756 KiB |
| 04_manygroup_15.txt | AC | 171 ms | 4664 KiB |
| 04_manygroup_16.txt | AC | 171 ms | 4748 KiB |
| 04_manygroup_17.txt | AC | 146 ms | 4664 KiB |
| 04_manygroup_18.txt | AC | 181 ms | 4664 KiB |
| 04_manygroup_19.txt | AC | 174 ms | 4668 KiB |
| 10_min_01.txt | AC | 28 ms | 4660 KiB |
| 10_min_02.txt | AC | 27 ms | 4660 KiB |
| 10_min_03.txt | AC | 27 ms | 4668 KiB |