본문 바로가기
프로그래머스/프로그래머스 Lv0

Lv0 캐릭터의 좌표

by 독기품기 2024. 7. 21.

https://school.programmers.co.kr/learn/courses/30/lessons/120861

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

이 문제는 문제에서 주어진 조건들을 하나하나 살펴가면서 풀어야 실수가 나오지 않는 문제이다.

먼저 문제에서 시작은 항상 0,0에서 시작한다했으므로 answer = [0, 0]을 해주고 가로크기가 9일 때 왼쪽으로 최대 -4, 오른쪽으로 최대 4까지 밖에 못 간다고 예시가 나와있는데 이를 보면 주어진 가로, 세로 길이를 가진 board 배열의 원소들을 2로 나눈 몫이라는 것을 알 수 있다.

따라서 x = borad[0]//2, y = board[1]//2를 해주고 입력된 배열을 하나하나 봐야 하므로 for i in keyinput을 해준다.

여기서 if~elif문을 사용해 여러 조건을 봐야 하는데 위에서 설명했듯이 최대 길이를 넘어가면 안되고 

left => 0번째 원소에 -1, right => 0번째 원소에 +1, up => 1번째 원소에 +1, down => 1번째 원소에 -1를 해야 한다고 문제에 나와 있는데 이를 적용해 조건을 작성하게 되면 아래 사진처럼 된다.

여기서 주의할 점은 -1을 해주는 left, down은 -x, -y.보다 작게 되면 범위가 초과하므로 -x, -y보다 항상 커야 한다.

'프로그래머스 > 프로그래머스 Lv0' 카테고리의 다른 글

Lv0 로그인 성공?  (0) 2024.07.22
[PCCE 기출문제] 7번 / 가습기  (0) 2024.07.21
Lv0 직사각형 넓이 구하기  (0) 2024.07.19
Lv0 종이 자르기  (0) 2024.07.19
[PCCE 기출문제] 3번 / 나이 계산  (0) 2024.07.18