편집 규칙의 문구를 수정하여 암시적인 내용을보다 명확하게 만들었습니다. 또한 혼동의 명백한 부분을 해결하는 데 중점을 두 었으며 기능 대신 독립형 프로그램을 만드는 옵션을 명시 적으로 정의했습니다.
여기서 목표는 텍스트 파일 (또는 문자열)을 가져 와서 행이 열이되도록 그 반대로 변환하는 기능을 만드는 것입니다.
예:
나는 텍스트입니다. 전치하십시오. 당신은 그것을 할 수 있습니다?
결과 :
ITC ra 아안 mn 싸이 아포 ou ts eed xo tm .ei .티 ?
규칙:
- 당신이 사용하는 유일한 공백 문자가 있다고 가정 할 수 있습니다
" "
및"\n"
및 회선에 후행 공백이 없다는 것을. - 파일이 ASCII라고 가정 할 수 있습니다. 사용하려는 종료 마커는 귀하에게 달려 있습니다 (CRLF 또는 LF). 예제에서는 올바르게 작동해야하지만 위의 가정을 만족하는 모든 입력 에서도 작동해야합니다 .
- 열을 일렬로 유지하려면 공간이 없어야합니다 (예에서와 같이).
- 결과 는 어떤 행에도 후행 공백 이 없어야합니다 .
- 마지막 줄 바꿈 문자는 선택 사항입니다.
- 기능이거나 완전한 프로그램이어야합니다. 귀하의 경우 함수는 문자열을 받아, 다음은 문자열로 결과를 반환해야합니다. 파일 이름을 허용하면 결과를 저장 한 파일의 이름을 반환합니다. 또한 STDIN의 입력을 승인하고 올바른 결과를 STDOUT에 출력 하는 완전한 프로그램 을 작성할 수 있습니다 . 이렇게하면 STDERR에 아무것도 출력 하지 않아야합니다 .
- 가장 짧은 절차가이기는하지만, 내가 좋아하는 답변을 찬성합니다.
규칙에 따라 예제의 출력은 최종 개행 문자의 포함 여부에 따라 53 바이트 또는 52 바이트 (LF 개행 문자)입니다.
참고 : 특정 요구 사항은 아니지만 두 번 연속으로 실행할 때 함수가 원본과 동일하지 않은 경우 (마지막 줄 바꿈이 다를 수 있으며 파일 끝의 빈 줄이 삭제됩니다) 아마도 규칙 중 하나를 어길 것입니다.