본문 바로가기

2

[BOJ/PYTHON] 19591. 독특한 계산기 백준 문제 링크: https://www.acmicpc.net/problem/19591 문제 요약 수식에서 맨 앞의 연산자, 또는 맨 뒤의 연산자 먼저 계산한다. 단, 음수의 부호는 연산자로 취급하지 않는다. 곱셈, 나눗셈을 덧셈, 뺄셈보다 더 먼저 계산한다. 연산자의 우선순위가 같다면 해당 연산자를 계산했을 때 결과가 큰 것부터 계산한다. 계산했을 때 결과 값 또한 같다면 앞에 것을 먼저 계산한다. 맨 앞 숫자만 음수가 들어올 수 있음 불필요한 0이 앞에 있을 수 있음. (001 + 0002 가능) (출력 시 제거해야) 나눗셈은 나누어지는 수가 양수면 나머지가 0 이상, 음수면 나머지가 0 이하로 처리가 되는 식으로 진행했을 때 나오는 몫을 계산 핵심 아이디어 주의해야 하는 조건만 잘 처리해주면 나머지는.. 2023. 6. 1.
[BOJ/PYTHON] 20301. 반전 요세푸스 백준 문제 링크: https://www.acmicpc.net/problem/20301 문제 요약 (N, K, M)-반전 요세프스 순열 구하기 요세푸스 순열: 원을 이뤄 앉아있는 사람 중 k번째 사람을 순서대로 제거. 반전: M명의 사람이 제거될 때마다 원 돌리는 방향 바꿈 핵심 아이디어 요세푸스 문제를 풀었으면 쉽게 풀 수 있다. 요세푸스 순열에서 반전되는 경우를 추가적으로 핸들링해주면 된다. 파이썬 덱에서는 양수로 rotate할 때는 rotate(k)를 해주면 되는데 음수로 해줄 땐 rotate(-(k-1))을 해줘야 한다. 사람 제거하면서 제거된 사람 수를 1씩 더해주고, m만큼 제거했으면 방향을 바꿔주면 된다. 풀이 # silver3-20301. 반전 요세푸스 import sys from colle.. 2023. 6. 1.