오늘 당신의 도전은 다음과 같이 입력하는 것입니다.
fbcfbee
ffcabbe
debceec
bccabbe
edcfbcd
daeaafc
eebcbeb
그리고 다음과 같이 3 개 이상의 글자와 일치하는 Bejeweled와 같은 게임에서 가능한 최고의 움직임을 출력하십시오 (대문자 B
및 C
).
fbcfbee
ffcabbe
deBCeec
bccabbe
edcfbcd
daeaafc
eebcbeb
전체 사양 :
- 입력이있을 것이다
n
라인n
소문자 각 (n
될 수있는 임의의 수). - 결과는 경기 3 게임에서 할 수있는 가장 좋은 움직임이며 대문자로 바꾸려는 두 글자가 있습니다.
일치는 다음 우선 순위를 가져야합니다 (이 예에서는
.
중요하지 않은 사각형을 나타냄).5 행
xxYxx ..X..
깨진 5 행
X.. Yxx x.. x..
또는
.X. xYx .x. .x.
한 줄에
xYxx .X..
3 행
xYx .X.
우선 순위가 가장 높은 것을 찾아서 출력해야합니다.
- 우선 순위가 동일한 여러 개의 일치 항목이있는 경우 그 중 하나를 출력 할 수 있습니다.
- 일치하는 항목이 항상 하나 이상 있습니다 (일치하는 항목이 없으면 프로그램이 중단되거나 원하는 작업을 수행 할 수 있음).
- I / O는 합리적인 형식 (stdin / out, 파일 읽기 및 쓰기, 함수 인수 / 반환 값, 대화 상자 등) 일 수 있지만 하드 코딩되지는 않습니다 (예 :)
x="[insert input here]"
. - 이것은 코드 골프 이므로 바이트 단위의 가장 짧은 코드가 승리합니다. 어떤 이유로 든 네트워크 액세스를 사용하는 경우 네트워크에서 다운로드 한 모든 바이트가 점수에 포함됩니다.
1
+1이지만 제목에 항의합니다. 더 나은 움직임이있을 수 있습니다. 예를 들어, 두 개의 파이브를 생성하는 하나 또는 한 방울이 더 많은 물건을 생성하게하는 하나입니다.
—
Justin
깨진 5 행도 포함
—
피터 테일러
..x.\nxxYX\n..x.
됩니까?
@ 피터 예, 그렇습니다.
—
Doorknob
행 패턴에는 2 개의 깨진 5가 있습니다 : L 패턴과 T 패턴. 둘 다 일치해야합니까?
—
n̴̖̋h̷͉̃a̷̭̿h̸̡̅ẗ̵̨́d̷̰̀ĥ̷̳
@nhahtdh 예, 명확히하기 위해 편집하겠습니다.
—
Doorknob