CODING TEST/Code Tree

[코드트리 챌린지] 1주차 - 코딩테스트 공부 출발( 방향에 맞춰 이동 / 문자에 따른 명령2 )

2023. 9. 8. 23:58
목차
  1. 실력진단
  2. 학습 내용
  3. 1. 방향에 맞춰 이동
  4. 2. 문자에 따른 명령2
728x90

실력진단

1주차 점수: 347

코드트리 챌린지를 위해 실력진단을 진행했다. (어찌 맨 처음보다 점수가 떨어졌다 ㅎㅎ..)

실력진단을 하면서 주어진 시간을 적지 않지만 그동안 나의 생각을 코드로 옮기기 쉽지 않았다.

그만큼 연습과 학습이 되어있지 않다는 뜻일 것이다.

공부할수록 점차 성장할 나를 기대하며 1주차 학습을 시작한다.

 


진단결과 dx, dy부분이 부족하다는 결과가 나왔다.

dx, dy에 대해 공부한 내용을 기록한다.


 

학습 내용

 

1. 방향에 맞춰 이동

[코드트리] 방향에 맞춰 이동

 

 

n=int(input()) x, y = 0, 0 for i in range(n): ​​​​direction, distance = input().split() ​​​​distance=int(distance) ​​​​if direction=='W': ​​​​​​​​x-=distance ​​​​elif direction=='S': ​​​​​​​​y-=distance ​​​​elif direction=='N': ​​​​​​​​y+=distance ​​​​elif direction=='E': ​​​​​​​​x+=distance print(x, y)

1) 이동 횟수를 입력 받는다.

2) 이동방향과 이동거리를 입력 받는다.

이동거리의 경우 거리계산을 위해 int형으로 변환한다.

3) elif문을 사용해 방향이 각각 W, S, N, E 일때 x또는 y를 더하거나 빼준다.

 

 

💡참고

방향 x축 y축
W +1 0
S 0 +1
N 0 -1
E -1 0

수학에서의 좌표가 아닌 행과 열의 이동을 기준으로 생각해야한다.

 


 

 

2. 문자에 따른 명령2

 

 

[코드트리] 문자에 따른 명령2

move_list=list(input()) x, y =0, 0 dx, dy = [1, 0, -1, 0], [0, -1, 0, 1] dir=3 for i in move_list: ​​​​if i == 'F': ​​​​​​​​x += dx[dir] ​​​​​​​​y += dy[dir] ​​​​elif i == 'L': ​​​​​​​​dir = (dir-1)%4 ​​​​elif i == 'R': ​​​​​​​​dir = (dir+1)%4 print(x, y)

1) 문자를 한 글자씩 잘라서 리스트 형태로 입력 받는다.

2) x, y 값을 0, 0으로 초기화한다.

dir은 현재 바라보고 있는 방향을 나타낸다.

동쪽 = 0, 남쪽 = 1, 서쪽 = 2, 북쪽 = 3

3) 좌표 계산을 위해 dx, dy 계산 값을 리스트로 초기화 한다.

(dir이 dx, dy의 인덱스 값이다.)

4) 입력 받은 문자열을 저장한 리스트에서 한글자씩 가져온다.

문자열에 따라 좌표 또는 시점을 계산한다.

  • 'F'인경우 바라보는 방향으로 좌표 이동
  • 'L'인경우 반시계 방향으로 시점 이동
  • 'R'인 경우 시계 방향으로 시점이동

5) 최종 좌표를 출력한다.

 


 

 

최근에 코드테스트를 위해 문제를 풀기 시작했었다.

하지만 방향 문제는 처음 접해서 머리로는 그림이 그려지지만 코드로 옮기기 쉽지 않았다.

방향문제에서 기본이 되는 전진과 방향전환을 보면서 아직 많이 부족하다는 것을 다시 한 번 깨닫는다.

기본적인 이동방법을 공부했으니 이를 적용할 문제들을 더 풀어봐야겠다. 화이팅 😀

728x90

'CODING TEST > Code Tree' 카테고리의 다른 글

[코드트리 챌린지] 6주차 - 다시 시작 ( 이동경로상에 있는 모든 숫자 더하기 / 가운데에서 시작하여 빙빙 돌기 / 007 / Next Level)  (1) 2023.10.17
[코드트리 챌린지] 5주차 - 이어서 쉬어가는 한 주( 빙빙 돌며 숫자 사각형 채우기 / 빙빙 돌며 숫자 사각형 채우기2 )  (1) 2023.10.09
[코드트리 챌린지] 4주차 - 이번주는 쉬어가기( 되돌아오기2 / 격자 위의 편안 상태)  (1) 2023.10.02
[코드트리 챌린지] 3주차 - 조금씩 올라서기 (1이 3개 이상 있는 위치 / 작은 구슬의 이동 / 빙빙 돌며 숫자 사각형 채우기 / 되돌아오기)  (0) 2023.09.25
[코드트리 챌린지] 2주차 - 아는 것이라는 착각 ( 출력결과 11 / 출력결과 38 / 특정 원소들의 합 / 숫자 직사각형 / 두 배열의 곱 / 두 개의 격자 비교하기)  (0) 2023.09.17
  1. 실력진단
  2. 학습 내용
  3. 1. 방향에 맞춰 이동
  4. 2. 문자에 따른 명령2
'CODING TEST/Code Tree' 카테고리의 다른 글
  • [코드트리 챌린지] 5주차 - 이어서 쉬어가는 한 주( 빙빙 돌며 숫자 사각형 채우기 / 빙빙 돌며 숫자 사각형 채우기2 )
  • [코드트리 챌린지] 4주차 - 이번주는 쉬어가기( 되돌아오기2 / 격자 위의 편안 상태)
  • [코드트리 챌린지] 3주차 - 조금씩 올라서기 (1이 3개 이상 있는 위치 / 작은 구슬의 이동 / 빙빙 돌며 숫자 사각형 채우기 / 되돌아오기)
  • [코드트리 챌린지] 2주차 - 아는 것이라는 착각 ( 출력결과 11 / 출력결과 38 / 특정 원소들의 합 / 숫자 직사각형 / 두 배열의 곱 / 두 개의 격자 비교하기)
더라
더라
250x250
더라
WINSOME
더라
전체
오늘
어제
  • ALL (63)
    • KNOWLEDGE (4)
      • Software engineering (1)
      • Data base (1)
      • Algorithm (0)
      • Security (2)
    • LANGUAGE (5)
      • Python (3)
      • Java (0)
      • C (0)
      • HTML (0)
      • CSS (2)
      • Javascript (0)
    • CODING TEST (35)
      • Beakjoon (20)
      • Code Tree (15)
    • PROGAMMING (6)
      • AR (0)
      • Android (0)
      • Program (1)
      • Project (5)
    • ERROR (4)
      • Android Error (1)
      • Unity (1)
      • Web (2)
    • Self-improvement (4)
      • certificate (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

최근 댓글

최근 글

hELLO · Designed By 정상우.
더라
[코드트리 챌린지] 1주차 - 코딩테스트 공부 출발( 방향에 맞춰 이동 / 문자에 따른 명령2 )
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.