기본 변환 사용
이 답변 은 문자 + |-
와 줄 바꿈으로 구성된 ASCII 아트를 원했던 질문에 대한 것입니다 . 가능한 문자는 5 개뿐이므로 기본 5 개의 숫자로 취급하여 바이트 당 3.45자를 압축하여 바이트로 변환 할 수 있습니다.
규칙 성 이용
이러한 규칙이 미러링과 같은 특정 도구를 사용하기에 충분히 강하지 않더라도 데이터에는 규칙 성이 있습니다. 예를 들어, 위의 질문에서 원하는 출력은 텍스트 전체가 대략 직사각형이므로 테스트 전체에 개행 문자가 대략 균등하게 배치되었습니다. 나는 이것을 Pyth의 n 조각으로 나누는 함수를 사용하여 줄 바꿈을 사용하여 코드를 줄이기 위해 활용했습니다.
도구를 알고 작업에 적합한 도구를 선택하십시오.
내가 아는 가장 강력하고 효율적인 텍스트 처리 도구는 다음과 같습니다.
정규식 엔진 : ///
, Retina, Perl, 전력 / 간결성 트레이드 오프 순서.
당신이하고 싶은 일 이이 대답 과 같은 정규식 대체에 간결하게 설명 될 수 있다면 사용하십시오
텍스트 처리 도구가 모호 해짐 : gema 등 (다른 도구는 있지만 확실하지 않음)
정확하게 필요한 기능이있는 경우 사용하십시오. 에서와 같이 이 질문에 GEMA의 재귀 매칭.
일반 코드 골프 언어 : CJam, Pyth 등
다른 도구가 작업을 수행하지 않거나 더 짧은 작업을 수행 할 수있을 정도로 미묘한 복합성을 활용하는 경우 사용하십시오.
많은 접근법을 시도하십시오
이것은 모든 코드 골프 질문에 적용되지만 특히 여기에 적용됩니다. 시도 할 때까지 규칙 성을 악용 할 수 있는지 여부는 알 수 없습니다. 여러 언어로 제공 될 수 있습니다.