티스토리 뷰
10158번: 개미
가로 길이가 w이고 세로 길이가 h인 2차원 격자 공간이 있다. 이 격자는 아래 그림처럼 왼쪽 아래가 (0,0)이고 오른쪽 위가 (w,h)이다. 이 공간 안의 좌표 (p,q)에 개미 한 마리가 놓여있다. 개미는 오
www.acmicpc.net
x 축과 y 축을 따로 생각해서 풀었다.
x축만을 예시로 들자면, 개미는 (p+t) / w 값이 홀수일떄는 왼쪽으로 짝수일때는 오른쪽으로 이동한다.
이때 홀수와 짝수를 나눠서 생각하지 않으면 예외에 걸릴 수 있기 때문에 if 문, for 문 또는 절댓값을 이용하여 풀어야한다.
w, h = map(int, input().split())
p, q = map(int, input().split())
t = int(input())
print(w - abs(w - (p + t) % (2 * w)), h - abs(h - (q + t) % (2 * h)))
코드의 식을 안쪽부터 순서대로 살펴보면
- (p + t) % (2 * w) - 왕복을 재외한 x 축 이동 거리
- abs(w - (p + t) % (2 * w)) - (p+t) / w 값이 홀수든 짝수든 상관 없게 해준다 (직접 계산해보면 알 수 있다).
- w - (abs(w - (p + t) % (2 * w))) - 마지막 계산
kthng.tistory.com/29 <- 이 블로그에 설명이 잘되어있다.
'algorithm > 백준' 카테고리의 다른 글
[python] 백준 2556번 : 별찍기14 (0) | 2021.02.16 |
---|---|
[python]백준 15891 : 스타트링크 사무실을 파해쳐보자 (0) | 2021.02.16 |
[C++]백준 10158번 : 개미 (0) | 2021.02.14 |
[C++] 백준 16947번 : 서울 지하철 2호선 (0) | 2021.02.14 |
[C++]백준 12091 : 이브이 진화 시키기 (0) | 2021.02.08 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 백준
- 7567
- 👼
- 직업군 추천
- 4
- 카카오 2021 블라인드 테스트
- 나머지
- math
- programmers
- 스택
- 프로그레머스
- 꿀따기
- FIBO
- forensic
- 괄호
- 1
- 파이썬
- openCV
- web
- 넓이
- 피보나치
- boj
- python
- 쇠막대기
- HackCTF
- 2
- c++
- 더하기
- 다익스트라
- 21758
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
글 보관함