Python으로 구현한 5355번 화성 수학 문제 풀이입니다.
https://www.acmicpc.net/problem/5355
tc = int(input())
for _ in range(tc) :
data = list(map(str, input().split()))
result = float(data[0])
for i in range(1, len(data)) :
if data[i] == '@' :
if data[0] == 0 :
result += 1
result *= 3
elif data[i] == '%' :
result += 5
else :
result -= 7
print(format(result, ".2f"))
화성 수학식을 리스트 형태로 입력받고 첫번째 값은 실수형으로 변환하여 result에 먼저 할당한다.
반복문을 통해 두번째 값부터 확인하는데, 그 값이 '@'라면 result에 3을 곱한다. 만약 result값이 0인 상태에서 곱하면
결과값이 0이 되기 때문에 이 경우에는 result 값을 1 증가시킨 후 곱셈 연산을 진행한다.
현재 확인하는 값이 '%'라면 result에 5를 더하고, '#'이라면 7을 뺀다.
최종적으로 계산을 완료한 화성 수학식의 결과를 소수점 둘째 자리까지 출력한다.
'백준(Python) 풀이 > 수학' 카테고리의 다른 글
백준(Python) 10822번 더하기 풀이 (0) | 2021.10.30 |
---|---|
백준(Python) 1747번 소수&팰린드롬 풀이 (0) | 2021.10.30 |
백준(Python) 9610번 사분면 풀이 (0) | 2021.10.27 |
백준(Python) 1568번 새 풀이 (0) | 2021.10.27 |
백준(Python) 1834번 나머지와 몫이 같은 수 풀이 (0) | 2021.10.27 |