#SFJSJJZN3082. 字串变换

    ID: 869 传统题 1000ms 128MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>搜索基础算法BFS来源算法竞赛进阶指南广度优先搜索双向BFS4

字串变换

题目描述

已知有两个字串 AA, BB 及一组字串变换的规则(至多6个规则):

A1A_1 -> B1B_1

A2A_2 -> B2B_2

规则的含义为:在 AA 中的子串 A1A_1 可以变换为 B1B_1A2A_2 可以变换为 B2B_2 …。

例如:AA=’abcd’ BB=’xyz’

变换规则为:

‘abc’->‘xu’ ‘ud’->‘y’ ‘y’->‘yz’

则此时,AA 可以经过一系列的变换变为 BB,其变换的过程为:

‘abcd’->‘xud’->‘xy’->‘xyz’

共进行了三次变换,使得 AA 变换为BB

输入格式

输入格式如下:

AA BB
A1A_1 B1B_1
A2A_2 B2B_2
… …

所有字符串长度的上限为 20。

输出格式

若在 10 步(包含 10步)以内能将 AA 变换为 BB ,则输出最少的变换步数;否则输出”NO ANSWER!”

输入样例:

abcd xyz
abc xu
ud y
y yz

输出样例:

3

来源

  • 《算法竞赛进阶指南》
  • acwing 可能含有视频讲解
}