개념
곡을 망치지 않고 Twinkle Twinkle Little Star 곡을 노래 할 수 있도록 영어 알파벳을 어떤 방식으로 스크램블 할 수 있습니까?
규칙
스와핑
다음의 각 세트에 포함 된 글자를 기본적으로 곡을 망치지 않고 자유롭게 바꿀 수 있다고 가정 해 봅시다.
- {A, J, K}
- {B, C, D, E, G, P, T, V, Z}
- {나, Y}
- {Q, U}
- {S, X, F}
- {M, N}
- 따라서 H, L, O, R 및 W가 제자리에 고정됩니다.
산출
프로그램은 위의 조건을 만족하는 순서대로 완전한 영어 알파벳을 포함하는 단일 RANDOM 문자열 (또는 문자 목록)을 임의의 순서로 출력해야합니다. 프로그램이 어떤 문자열을 출력할지 예측할 수있는 방법이 없어야합니다 (시드를 무시하는 경우). 단지 하드 코딩 할 수는 없습니다.
당신의 프로그램은 각각 출력.
간격, 구분 기호 또는 대소 문자에 대한 특정 형식 제한은 없으며 일관성이 있습니다.
골
가장 적은 바이트가 이깁니다!
예 :
- KCDBPSVHIAJLMNOZQRXGUEWFYT
- A, G, Z, V, P, X, C, H, Y, K, J, L, N, M, O, T, U, R, S, D, Q, B, W, F, I, 이자형
- KVTDCFBHIJALNMOPURSZQGWXYE
- jcdebxthikalnmogursvq pwfyz
- ABCDEFGHIJKLMNOPQRSTUVWXYZ
비 예제 :
- HLWROABCDEFZXYGIJKMNPQTSVU
개념 증명 : (Python3, 529 바이트)
import random
g1 = ['A', 'J', 'K']
g2 = ['B', 'C', 'D', 'E', 'G', 'P', 'T', 'V', 'Z']
g3 = ['I', 'Y']
g4 = ['Q', 'U']
g5 = ['S', 'X', 'F']
g6 = ['M', 'N']
random.shuffle(g1)
random.shuffle(g2)
random.shuffle(g3)
random.shuffle(g4)
random.shuffle(g5)
random.shuffle(g6)
print(g1[0] + g2[0] + g2[1] + g2[2] + g2[3] + g5[0] + g2[4] + 'H' + g3[0] + g1[1] + g1[2] + 'L' + g6[0] + g6[1] + 'O' + g2[5] + g4[0] + 'R' + g5[1] + g2[6] + g4[1] + g2[7] + 'W' + g5[2] + g3[1] + g2[8])
Z
, 그것은 다른 사람과 운율하지 않는다 "제자리에 고정"수?