이것은이다 quine의 변화.
소개
모호한 이유가 있기 때문에 우리는 모두 짧은 코드를 작성 하지만, 우리가 무엇을하든 최소 144 픽셀 / 바이트 (12px 글꼴)를 차지합니다. 그러나 코드를 이미지로 인코딩하면 어떻게 될까요? 이것이 오늘 당신의 임무입니다.
도전
작업은 자체 소스 코드를 읽고 (예를 들어 문자 파일을 읽는 등의 적절하지 않은 quines가 허용됨) ASCII를 기반으로 픽셀의 빨강, 녹색 및 파랑 구성 요소를 설정하여 이미지를 작성하는 것입니다. 캐릭터의 가치.
예:
"Hello world!"라는 문자열이 있습니다.
Hello world!
이것을 ASCII 값으로 변환 해 봅시다 :
72 101 108 108 111 32 119 111 114 108 100 33
RGB 값을 매핑하십시오 (소스 코드의 길이를 3으로 나눌 수없는 경우 나머지 문자로 0을 사용하십시오).
__________________________________________________
| R | G | B || R | G | B || R | G | B || R | G | B |
----------------------------------------------------
|72 |101|108||108|111|32 ||119|111|114||108|100|33 |
----------------------------------------------------
그런 다음 가장 작은 영역을 가진 이미지를 만듭니다. 4 개의 RGB 값 세트가 있으므로 가장 작은 이미지는 왼쪽 상단 픽셀에서 오른쪽으로 이동하는 2 * 2 이미지입니다.
그리고 우리는이 끔찍한 색의 이미지를 얻습니다 (크기가 조정되었으므로 최소한 눈에 띄고 작은 이미지를 얻을 수 있음)
규칙 / 추가 정보
- 입력이 없습니다
- 출력은 별도의 파일 또는 별도의 창에 있어야합니다.
- 멀티 바이트 문자의 경우 문자를 2 바이트로 분할하십시오.
- 소스 코드는 1 바이트 이상이어야합니다
- 이미지는 가능한 크기 중 하나 여야하며 가장 가까운 너비 / 높이 비율은 1입니다.
- 이미지의 픽셀 수는 정확히 ceil (byte count / 3)이어야하며 추가 픽셀은 추가되지 않아야합니다.
채점
이것은 code-golf 이므로 바이트 단위의 가장 작은 대답이 이깁니다.
height = N
와 width = 1
? 너비와 높이가 1에 가장 가까운 것을 의미한다고 생각합니다.