이 도전을 위해 체커 게임을 시작할 때 각 조각의 좌표와 색상을 인쇄합니다.
바둑판의 모든 정사각형 (색인 0-7)에 대해 x와 y (쉼표로 구분)를 입력 한 다음 보드 상단 (y = 0에 더 가까운)에 “r”또는 “b”(빨간색 또는 검은 색)를 입력합니다. )은 빨간색이고 하단은 검은 색입니다. 조각 사이의 줄 바꿈이 필요하며 공백이 필요하지 않습니다.
이것은 코드 골프 이므로 적은 바이트로 더 나은 답변을 바이트로 채점합니다.
후행 줄 바꿈은 허용되지만 필수는 아니며 순서는 아래 순서와 같아야합니다.
원하는 출력 :
0,0r
0,2r
0,4r
0,6r
1,1r
1,3r
1,5r
1,7r
2,0r
2,2r
2,4r
2,6r
5,1b
5,3b
5,5b
5,7b
6,0b
6,2b
6,4b
6,6b
7,1b
7,3b
7,5b
7,7b
답변
05AB1E , 26 바이트
2ÝD5+«v4Fy',N·yÉ+„bry3‹èJ,
설명
2Ý # push [0,1,2]
D5+ # duplicate and add 5: [5,6,7]
« # concatenate
v # for each y in [0,1,2,5,6,7] do:
4F # for each N in [0 ... 3] do:
y # push y
', # push ","
N·yÉ+ # push N*2+isOdd(y)
„br # push "br"
y3‹è # index into the string with y<3
J, # join everything to a string and print
답변
자바 스크립트 (ES6), 66 바이트
후행 줄 바꿈을 포함합니다.
f=(n=24)=>n--?f(n)+[2*(x=n>11)+(y=n>>2),n%4*2+y%2+'rb'[+x]]+`
`:''
데모
답변
답변
C (gcc) , 83 81 79 78 바이트
- Tahg 덕분에 2 바이트를 절약했습니다 . 골프
x/4+2*(x/12)
에x/4+x/12*2
. - Kevin Cruijssen 덕분에 2 바이트를 절약했습니다 . 골프
x%8*2%8
에x*2%8
. - ceilingcat 덕분에 바이트를 절약했습니다 .
x;main(){for(;x<24;)printf("%d,%d%c\n",x/4+x++/12*2,x*2%8+x/4%2,114-x/12*16);}
답변
파이썬 2 , 74 73 67 바이트
for i in 0,1,2,5,6,7:j=i%2;exec"print`i`+','+`j`+'rb'[i>4];j+=2;"*4
답변
자바 8, 102 96 95 93 91 바이트
v->{for(int i=0;i<24;System.out.printf("%d,%d%c%n",i/4+i/12*2,i*2%8+i/4%2,i++<12?114:98));}
포트에서 @JonathanFrech 의 C 대답 나는 5 자신 바이트 golfed 후.
설명:
v->{ // Method without empty unused parameter and no return-type
for(int i=0;i<24; // Loop from 0 to 24 (exclusive)
System.out.printf("%d,%d%c%n",
// Print with format:
// (%d=digit; %c=character; %n=new-line)
i/4+i/12*2, // Print first coordinate
i*2%8+i/4%2, // Print second coordinate
i++<12?114:98) // Print either 'r' or 'b'
); // End of loop
} // End of method