关注
package company.pinduoduo;
import java.util.*;
public class Main02 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()){
int s = sc.nextInt(); //进行的次数
for (int i = 1; i<=s ; ++i) {
String mei = sc.next();
String bai = sc.next();
List<String> res = new ArrayList<>();
List<String> list = dfs(mei,bai,"",0,res
,"");
Collections.sort(list);
System.out.println("{");
for(String ls: list){
for (int j = 0; j <ls.length() ; j++) {
if(j!=ls.length()-1) System.out.print(ls.charAt(j)+" ");
else {
System.out.print(ls.charAt(j));
}
}
System.out.println();
}
System.out.println("}");
}
}
}
public static List<String> dfs(String mei,String bai,String newStr,
int i,List<String> res,String way){
if(bai.equals(newStr)){
res.add(way);
return res;
}
if(i==mei.length()) return res;
way+="d";
dfs(mei,bai,newStr,i+1,res,way);
way = way.substring(0,way.length()-1);
String tmp1 = newStr;
newStr = mei.substring(i,i+1) + newStr;
way+="l";
dfs(mei,bai,newStr,i+1,res,way);
way = way.substring(0,way.length()-1);
newStr = tmp1;
String tmp2 = newStr;
newStr = newStr + mei.substring(i,i+1);
way+="r";
dfs(mei,bai,newStr,i+1,res,way);
way = way.substring(0,way.length()-1);
newStr = tmp2;
return res;
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你的实习产出是真实的还是包装的? #
88540次浏览 638人参与
# 什么专业适合考公 #
69480次浏览 345人参与
# 在爱玛,骑向未来 #
44301次浏览 434人参与
# 机械人,说说你的烦心事 #
148513次浏览 1162人参与
# 毕业季,给职场新人一些建议 #
221148次浏览 2600人参与
# 工作压力大,你会干什么? #
82351次浏览 707人参与
# 选offer应该考虑哪些因素 #
172486次浏览 1057人参与
# 工作后,你落下了哪些病根 #
42345次浏览 294人参与
# 机械人,秋招第一次笔试的企业是哪家? #
103454次浏览 707人参与
# 巨人网络工作体验 #
76601次浏览 507人参与
# 如何缓解入职前的焦虑 #
290777次浏览 1505人参与
# 携程笔试 #
174203次浏览 916人参与
# 我的第一份实习怎么找的 #
288558次浏览 2108人参与
# 重来一次,我还会选择这个专业吗 #
466676次浏览 3983人参与
# 你被哪些公司挂了? #
198011次浏览 1076人参与
# 职场新人体验 #
192729次浏览 1241人参与
# 实习生的蛐蛐区 #
957555次浏览 4840人参与
# 实习生工资多少才算正常? #
76140次浏览 526人参与
# 应届生,你找到工作了吗 #
174073次浏览 900人参与
# 找工作中的小确幸 #
92826次浏览 472人参与
# 你上一次加班是什么时候? #
157453次浏览 823人参与
