https://www.acmicpc.net/problem/12756
A와 B는 각각 공격력과 생명력을 가지고 있다. 서로를 공격한 후에 생명력이 얼마나 남아있는지 비교하여 풀 수 있는 문제이다.
출력물에 따라 아래와 같이 총 3가지의 경우로 나누어 볼 수 있다.
(1) A가 승리하는 경우
(2) B가 승리하는 경우
(3) 비기는 경우
누군가가 우선순위를 갖지 않고 '동시에' 공격을 하기 때문에, 같이 죽는 경우가 생긴다. ((3)에 해당하는 경우)
'A의 생명력-B의 공격력'과 'B의 생명력-A의 공격력'을 반복문을 사용하여 계속 비교한다.
두 수가 모두 양수인 경우에는 동일한 반복을 계속 하다가,
(1) B의 생명력만 음수가 되는 경우
(2) A의 생명력만 음수가 되는 경우
(3) A와 B의 생명력 모두 음수가 되는 경우
가 생기는 경우, 승패를 판단하고 반복문을 종료시키면 된다.
'Koala - 7기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/python] 20540번 연길이의 이상형 (0) | 2022.07.10 |
---|---|
[백준/Python] 15726번 이칙연산 (0) | 2022.07.10 |
[백준/python] 2869번 달팽이는 올라가고 싶다 (0) | 2022.07.10 |
[백준/python] 4494번 가위 바위 보? (0) | 2022.07.10 |
[백준/Python]8393번 합 (0) | 2022.07.10 |