알고리즘

[문제] 구현 (상하좌우) - 20210531

grep.jj 2021. 5. 31. 23:48
  • 시작시간 : 21시 43분
  • 종료시간 : 23시 33분
  • 문제 : 
    여행가 A는 N × N 크기의 정사각형 공간 위에 서 있다. 이 공간은 1 × 1 크기의 정사각형으로 나누어져 있다.
    가장 왼쪽 위 좌표는 (1, 1)이며, 가장 오른쪽 아래 좌표는 (N, N)에 해당한다.
    여행가 A는 상, 하, 좌, 우 방향으로 이동할 수 있으며, 시작 좌표는 항상 (1, 1)이다. 우리 앞에는 여행가 A가
    이동할 계획이 적힌 계획서가 놓여 있다.

    계획서에는 하나의 줄에 띄어쓰기를 기준으로 L, R, U, D 중 하나의 문자가 반복적으로 적혀있다.
    각 문자의 의미는 다음과 같다

      L: 왼쪽으로 한 칸 이동
      R: 오른쪽으로 한 칸 이동
      U: 위로 한 칸 이동
      D: 아래로 한 칸 이동

    이때 여행가 A가 N × N 크기의 정사각형 공간을 벗어나는 움직임은 무시된다. 예를 들어 (1, 1)의 위치에서 L 혹은 U를 만나면 무시된다. 다음은 N = 5인 지도와 계획이다
    참고자료 : 이것이 취업을 위한 코딩 테스트다 with 파이썬 - 나동빈 지음, 한빛미디어 옮김
  • 풀이 :
    자바
    결과
  • 회고 : 

next(); nextLine() 에서 헤맸다.

두번째 라인이 입력받아지지 않았는데... 개행문자 때문이었다. (참고 :  https://limkydev.tistory.com/170)

그리고, 문자 0을 숫자로 바꾸는데 아스키 코드에서 헤맸다. 검증을 안하고 달리다보니... 

분명 더 좋은 방법이 있을텐데.. 아쉽다!