== 이야기 == 30분 만에 푼만큼 소스도 알고리즘도 원시적이다^^ 그래도 시간이 그렇게 많이는 안나와서 다행임^^ (0.016초) 나중에 다시 코딩해 볼 것!! == 코드 == {{{~cpp #include using namespace std; int willy, direction, step, mNum; int row, col; void getMaja(int wNum) { step=1; row=0; col=0; if(wNum==1) { cout << row << " " << col<wNum) { direction = 2; mNum = wNum - (3*step*step-8*step+6); break; } else if(3*step*step-7*step+5<=wNum && 3*step*step-6*step+4>wNum) { direction = 3; mNum = wNum - (3*step*step-7*step+5); break; } else if(3*step*step-6*step+4<=wNum && 3*step*step-5*step+3>wNum) { direction = 4; mNum = wNum - (3*step*step-6*step+4); break; } else if(3*step*step-5*step+3<=wNum && 3*step*step-4*step+2>wNum) { direction = 5; mNum = wNum - (3*step*step-5*step+3); break; } else if(3*step*step-4*step+2<=wNum && 3*step*step-3*step+1>wNum) { direction = 6; mNum = wNum - (3*step*step-4*step+2); break; } else if(3*step*step-3*step+1<=wNum && 3*(step+1)*(step+1)-8*(step+1)+6>wNum) { direction = 7; mNum = wNum - (3*step*step-3*step+1); break; } else step++; } if(direction==2) { col=step-1; while(mNum--) row--; } else if(direction==3) { row=-step+1; col=step-1; while(mNum--) col--; } else if(direction==4) { row=-step+1; while(mNum--) { row++; col--; } } else if(direction==5) { col=-step+1; while(mNum--) row++; } else if(direction==6) { row=step-1; col=-step+1; while(mNum--) col++; } else { row=step-1; if(mNum-->=1) { col++; while(mNum--) { row--; col++; } } } cout << row << " " << col <>willy) getMaja(willy); return 0; } }}}