이 도전은 1984 년 이 Wendy의 광고 에서 영감을 얻었습니다 .
TS Rogers의 일러스트레이션
당신의 작업은 이진 롤빵에서 16 진수 0xBEEF를 찾는 것입니다.
'쇠고기'는 다음 패턴으로 구성됩니다.
1 0 1 1 (0xB)
1 1 1 0 (0xE)
1 1 1 0 (0xE)
1 1 1 1 (0xF)
'bun'은 다음과 같은 12x12 이진 행렬로 구성됩니다.
1 1 1 0 0 1 1 1 1 1 1 0
1 1 0 1 0 0 1 0 0 0 0 0
0 1 0 0 0 1 1 1 1 1 0 1
1 0 0 1 0 0 1 0 0 1 0 0
1 0 0 1 0 1 1 0 0 1 1 1
1 1 1 1 1 1 0 0 0 0 1 0
1 1 0 1 1 1 0 0 0 0 0 1
1 0 0 1 1 1 1 0 0 0 0 1
1 0 0 1 1 1 0 1 1 1 1 1
1 1 1 1 1 0 0 1 1 1 1 1
1 0 0 0 0 1 0 1 0 1 1 1
1 1 0 0 1 1 0 0 0 0 1 1
입력
프로그램이나 함수는 이진 행렬을 입력으로 사용합니다. 행렬 형식은 매우 유연하지만 답에 명확하게 설명해야합니다.
예를 들어 :
행 사이에 구분 기호가 있거나없는 단일 이진 문자열
"111001111110 110100100000..."
또는:
"111001111110110100100000..."
이진 문자열의 배열 :
["111001111110", "110100100000", ...]
숫자 배열 (각 숫자는 한 번 이진으로 다시 변환되고 왼쪽으로 0으로 채워짐) :
[3710, 3360, ...]
산출
롤빵의 왼쪽 상단 모서리 인 (X, Y)
'쇠고기' 의 좌표 입니다 (0, 0)
.
또는 1 기반 좌표를 사용할 수 있습니다 (X의 경우 0, Y의 경우 1과 같은 두 형식의 혼합은 아님).
위의 예에서 예상 답변은 (3, 4)
(0 기반) 또는 (4, 5)
(1 기반)입니다.
00 01 02 03 04 05 06 07 08 09 10 11
00 1 1 1 0 0 1 1 1 1 1 1 0
01 1 1 0 1 0 0 1 0 0 0 0 0
02 0 1 0 0 0 1 1 1 1 1 0 1
03 1 0 0 1 0 0 1 0 0 1 0 0
04 1 0 0 [1 0 1 1] 0 0 1 1 1
05 1 1 1 [1 1 1 0] 0 0 0 1 0
06 1 1 0 [1 1 1 0] 0 0 0 0 1
07 1 0 0 [1 1 1 1] 0 0 0 0 1
08 1 0 0 1 1 1 0 1 1 1 1 1
09 1 1 1 1 1 0 0 1 1 1 1 1
10 1 0 0 0 0 1 0 1 0 1 1 1
11 1 1 0 0 1 1 0 0 0 0 1 1
다시 말하지만, 귀하의 답변에 명시된 한 합리적인 형식이 작동합니다. 0 기반 또는 1 기반 좌표를 사용하는 경우에도 언급하십시오.
규칙
- 롤빵에 항상 정확히 하나의 '쇠고기'가 있다고 가정 할 수 있습니다. 귀하의 코드는 쇠고기가 두 개 이상이거나 쇠고기가없는 경우를 지원할 필요는 없습니다.
- 쇠고기 패턴은 항상 설명대로 나타납니다. 어떤 식 으로든 회전하거나 미러링하지 않습니다.
- 이것은 코드 골프이므로 바이트 단위의 최단 답변이 이깁니다. 표준 허점은 금지되어 있습니다.
테스트 사례
다음 테스트 사례에서 행렬의 각 행은 10 진수 표현으로 표시됩니다.
Input : [ 3710, 3360, 1149, 2340, 2407, 4034, 3521, 2529, 2527, 3999, 2135, 3267 ]
Output: [ 3, 4 ]
Input : [ 1222, 3107, 1508, 3997, 1906, 379, 2874, 2926, 1480, 1487, 3565, 633 ]
Output: [ 3, 7 ]
Input : [ 2796, 206, 148, 763, 429, 1274, 2170, 2495, 42, 1646, 363, 1145 ]
Output: [ 6, 4 ]
Input : [ 3486, 3502, 1882, 1886, 2003, 1442, 2383, 2808, 1416, 1923, 2613, 519 ]
Output: [ 1, 1 ]
Input : [ 3661, 2382, 2208, 1583, 1865, 3969, 2864, 3074, 475, 2382, 1838, 127 ]
Output: [ 8, 8 ]
Input : [ 361, 1275, 3304, 2878, 3733, 3833, 3971, 3405, 2886, 448, 3101, 22 ]
Output: [ 0, 3 ]
Input : [ 3674, 2852, 1571, 3582, 1402, 3331, 1741, 2678, 2076, 2685, 734, 261 ]
Output: [ 7, 7 ]
y
, x
(예를 역순)?
(1,1)
있습니까 ( 왼쪽 상단이 )?