[백준] 드래곤 커브 15685

유시준·2022년 4월 25일
0

algorithm

목록 보기
18/21

문제풀이

  • 초기에 이동한 정보를 어떻게 뒤에 까지 들고가야 할까를 계속 고민하다가 패턴을 써보고서야 규칙이 있다는 것을 알게되었다.
	public static int dx[] = {0,-1,0,1};
	public static int dy[] = {1,0,-1,0};

위 코드는 실제 코드에서 이동을 위한 x,y증감 값을 저장해놓은 것 이다.

  • 0세대 : 0

  • 1세대 : 0 / 1

  • 2세대 : 0 1 / 2 1

  • 3세대 : 0 1 2 1 / 2 3 2 1
  • 4세대 : 0 1 2 1 2 3 2 1 / 2 3 0 3 2 3 2 1
    가운데 /를 기준으로 역방향으로 +1씩하는 규칙이 보인다. 3의 경우는 %4를 하여 0이 된다.
    ex){0 {1 {2 {1 / (1+1)} (2+1)} (1+1)} 1}
    이러한 규칙을 이용해 구현하면 해결할 수 있다.

코드

solution

문제링크

boj/15685

profile
금꽁치's Blog

0개의 댓글