1. 程式人生 > >NOIP2002-字串變換【雙端BFS】

NOIP2002-字串變換【雙端BFS】

NOIP2002-字串變換

Description

已知有兩個字串A,BA,B及一組字串變換的規則(至多66個規則):

A_1A1 ->B_1B1

A_2A2 -> B_2B2

規則的含義為:在 AA中的子串 A_1A1 可以變換為B_1B1A_2A2 可以變換為 B_2B2 …。

例如:AA='abcdabcd'BB='xyzxyz'

變換規則為:

abcabc’->‘xuxu’‘udud’->‘yy’‘yy’->‘yzyz’

則此時,AA可以經過一系列的變換變為BB,其變換的過程為:

abcdabcd’->‘xudxud’->‘xyxy’->‘xyzxyz’

共進行了33次變換,使得AA變換為BB。

Input

格式如下:

ABB
A_1A1 B_1B1
A_2A2 B_2B2 |-> 變換規則

... ... /

所有字串長度的上限為2020。

Output

輸出至螢幕。格式如下:

若在1010步(包含1010步)以內能將AA變換為BB,則輸出最少的變換步數;否則輸出"NO ANSWER!"

Sample Input

abcd xyz
abc xu
ud y
y yz

Sample Output

3

輸入輸出樣de