알고리즘/programmers

[Programmers] 공 이동 시뮬레이션

꾸준함. 2022. 8. 7. 17:49

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/87391

프로그래머스

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

programmers.co.kr

주어진 쿼리의 역순으로 계산하면 AC를 받을 수 있는 문제였습니다.

알고리즘은 아래와 같습니다.
1. 열과 행의 범위를 나타내는 pair<long long, long long> 변수를 선언하고 주어진 쿼리의 역순으로 진행합니다.
1.1 역순이므로 문제에서 주어진 방향은 반대가 되어야 합니다.
ex) query(0, dx) -> 열 번호가 증가하는 방향으로 이동하는 쿼리로 치환
1.2 또한, 정방향으로 쿼리를 진행했을 때 테두리에 위치한 모서리는 움직일 수 없도록 처리합니다.
2. 1번을 진행하는 도중 열 또는 행의 범위가 벗어날 경우 어떠한 공도 해당 위치에 도달할 수 없다는 뜻이므로 0을 반환합니다.
3. 2번의 케이스가 등장하지 않을 경우 열의 범위와 행의 범위 내 위치한 공들이 (x, y)에 도달할 수 있다는 뜻이므로 (열의 범위) * (행의 범위)가 답이고 이를 반
환해줍니다.


개발환경: Programmers IDE

지적, 조언, 질문 환영합니다! 질문 남겨주세요~

반응형

'알고리즘 > programmers' 카테고리의 다른 글

[Programmers] 매칭 점수  (0) 2022.08.15
[Programmers] 외벽 점검  (0) 2022.08.09
[Programmers] 카드 짝 맞추기  (0) 2022.08.05
[Programmers] 캠핑  (0) 2022.08.02
[Programmers] 호텔 방 배정  (0) 2022.07.29