关注
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;
}
}
查看原帖
点赞 评论
相关推荐
牛客热帖
正在热议
# 25届秋招总结 #
341819次浏览 3268人参与
# 我的实习求职记录 #
6078160次浏览 83613人参与
# 百度开奖 #
192703次浏览 1228人参与
# 地方国企笔面经互助 #
4828次浏览 12人参与
# 职场吐槽大会 #
89771次浏览 740人参与
# 选完offer后,你后悔学本专业吗 #
22433次浏览 160人参与
# 北方华创开奖 #
39101次浏览 406人参与
# ai智能作图 #
1246次浏览 34人参与
# 运营商笔面经互助 #
91977次浏览 1329人参与
# 海康威视求职进展汇总 #
401668次浏览 3414人参与
# 如果有时光机,你最想去到哪个年纪? #
23466次浏览 469人参与
# 国企还是互联网,你怎么选? #
89746次浏览 697人参与
# 风评不好的公司,你会去吗? #
20522次浏览 94人参与
# 如何一边实习一边秋招 #
998643次浏览 12681人参与
# 腾讯求职进展汇总 #
197767次浏览 1650人参与
# 银行笔面经互助 #
84271次浏览 888人参与
# 第一份工作应该选择高薪还是大平台 #
88722次浏览 590人参与
# bilibili求职进展汇总 #
33720次浏览 360人参与
# 许愿池 #
215259次浏览 2536人参与
# 上班苦还是上学苦呢? #
78223次浏览 724人参与
# 正在实习的你,几点下班 #
53835次浏览 397人参与
# 国央企薪资爆料 #
13195次浏览 96人参与