문제 분류 수업 진도 대회 채점현황 순위 질문게시판
게임
스도쿠 타이핑 리듬 타자게임 타이핑 테트리스 타이핑 인베이더 타이핑 지뢰찾기 8192 공룡게임 타이핑 플래피버드 랭킹
로그인

7281 : 재귀 순열 생성

•시간제한: 2.000 S •메모리제한: 256 MB •제출: 0 •통과: 0 •만든사람: suakii

7281 : 재귀 순열 생성

시간 2.000s · 메모리 256MB · 제출 0 · 정답 0

문제 설명

재귀(백트래킹)를 이용하여 문자열 $S$의 문자들로 만들 수 있는 모든 순열을 사전순으로 출력하십시오.
순열: 주어진 원소들을 순서를 고려하여 모두 나열한 경우의 수.
$S$의 문자들은 모두 다릅니다.





[제약 조건]
• 문자열 $S$는 알파벳 소문자로만 구성되며 중복된 문자가 없습니다.
• 문자열 $S$의 길이는 1 이상 6 이하입니다.

입력 설명

첫째 줄에 문자열 $S$가 주어집니다. (길이 $\le 6$, 중복 없는 문자들)

출력 설명

만들 수 있는 모든 순열을 사전순으로 줄바꿈 출력합니다.

입력 예시
COPY
복사되었습니다!

abc

출력 예시
COPY
복사되었습니다!

abc
acb
bac
bca
cab
cba

도움

used 배열로 방문 여부를 관리하고 미방문 문자를 순서대로 선택하여 재귀합니다. 더 간단하게는 itertools.permutations(sorted(s))를 활용할 수 있습니다.
NOTICE  —  BFStudy OJ 정보샘
애들아, 문제 많이 풀고 게임 잠깐 하는거지?
— 정보샘