#include <iostream>
#define size 5
int main() {
int table[size][size],
si,sj;//입력시작할세로가로
si=sj=size/2;
int
count = 1,//기록할 숫자
len = 1,//한번에 직진할 거리
ic=0,jc= 0,//세로가로이동횟수
ia=1,ja=-1;//↕↔방향
for(;;){
table[si][sj] = count;
if(size*size <= count++) break;
_re:
if(len > jc++){ sj+=ja; continue; }
if(len > ic++){ si+=ia; continue; }
len++;
ic=jc=0;
ia*=-1;
ja*=-1;
goto _re;
}
for(int i = 0;i<size;i++){
for(int j = 0;j<size;j++){
printf("M", table[i][j]);
}
printf("\n");
}//그냥 출력만하는 부분
return 0;
}
----------------------------------------------------
땔감학원에서 과제로 내줘서 오랜만에 짜봤는데
자바기반이라 goto못쓰고 조건문으로 때운거
cpp로 포팅해서 돌려봄.
가운데서 입력시작하는건 좀 병신같은듯
ㅁㅌㅊ?
goto...
구글 입사 가능
빌게이츠와 친구 가능