输出不对求调
  • 板块题目总版
  • 楼主25tcx
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/11/25 17:31
  • 上次更新2023/11/25 19:27:36
查看原帖
输出不对求调
1031089
25tcx楼主2023/11/25 17:31

题目描述

王村长生了个大胖儿子需要起英文名字,关键要朗朗上口。他认为有n种音节是好听的,必须都用到一次,那么有哪些排序方式呢?

输入输出格式

输入格式

输入第一行为正整数n,第二行有n个小写字符串各自代表一种音节(无重复),n<=5。

输出格式

输出儿子的小写英文名候选方案,每一行输出一个,按照字典序输出。注意儿子一定姓王。注意行末没有空格。

输入输出样例

输入样例#1:

2

tuo ni

输出样例#1:

nituo wang

tuoni wang

输入样例#2:

3

cha li si

输出样例#2:

chalisi wang

chasili wang

lichasi wang

lisicha wang

sichali wang

silicha wang


代码:

#include <bits/stdc++.h>
using namespace std;
string a[100005];
void dfs(int x,int n,string box[100005],vector<int>& visited){
	if(x==n+1){
		for(int i=1;i<=n;i++){
			cout<<box[i];
		}
		cout<<" wang"<<endl;
		return;
	}
	for(int i=1;i<=n;i++){
		if(visited[i]==0){
			box[x]=box[i];
			visited[i]=1;
			dfs(x+1,n,box,visited);
			visited[i]=0;
		}
	}
}
int main()
{
//	freopen("name1.in","r",stdin);
//	freopen("name1.out","w",stdout);
	int n;
	vector<int> fhj;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	fhj.resize(n+1,0);
	dfs(1,n,a,fhj);
	return 0;
}

求调~

2023/11/25 17:31
加载中...