关注
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;
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 除了Java,最推荐学什么技术? #
1724次浏览 55人参与
# AI时代的工作 VS 传统时代的工作,有哪些不同? #
2097次浏览 71人参与
# 你的landing期是如何度过的? #
2176次浏览 42人参与
# 滴滴求职进展汇总 #
299070次浏览 2445人参与
# 秋招报数:你投了多少家公司? #
148356次浏览 946人参与
# 机械制造面试点评 #
84011次浏览 471人参与
# 你觉得早上几点上班合适? #
94322次浏览 353人参与
# 机械人与华为的爱恨情仇 #
147208次浏览 1030人参与
# 机械只有转码才有出路吗? #
159405次浏览 1653人参与
# 我和mentor的爱恨情仇 #
102885次浏览 925人参与
# 你觉得mentor喜欢什么样的实习生 #
45510次浏览 989人参与
# 如何提高实习转正率? #
80878次浏览 488人参与
# 实习期间如何提升留用概率? #
231083次浏览 1788人参与
# 你觉得什么岗位会被AI替代 #
35303次浏览 236人参与
# 聊聊你的被动加班经历 #
8507次浏览 101人参与
# 秋招提前批,你开始投了吗 #
705839次浏览 8437人参与
# 面试常问题系列 #
268820次浏览 4687人参与
# 京东求职进展汇总 #
1138659次浏览 8519人参与
# 牛客十周岁生日快乐 #
207847次浏览 1937人参与
# 为了秋招你都做了哪些准备? #
31501次浏览 532人参与
查看2道真题和解析
