반응형
안녕하세요 성조입니다.
문제 출처
https://www.acmicpc.net/problem/5355
문제
겨울 방학에 달에 다녀온 상근이는 여름 방학 때는 화성에 갔다 올 예정이다. (3996번) 화성에서는 지구와는 조금 다른 연산자 @, %, #을 사용한다. @는 3을 곱하고, %는 5를 더하며, #는 7을 빼는 연산자이다. 따라서, 화성에서는 수학 식의 가장 앞에 수가 하나 있고, 그 다음에는 연산자가 있다.
입력
첫째 줄에 테스트 케이스의 개수 T가 주어진다. 다음 줄에는 화성 수학식이 한 줄에 하나씩 주어진다. 입력으로 주어지는 수는 정수이거나 소수 첫째 자리까지 주어지며, 0 이상 100 이하이다. 연산자는 최대 3개 주어진다.
출력
각 테스트 케이스에 대해서, 화성 수학식의 결과를 계산한 다음에, 소수점 둘째 자리까지 출력한다.
코드
num = int(input())
for i in range(num):
req = input().split()
res =(float(req[0]))
for j in range(len(req)):
if req[j]=='@':
res *= 3
elif req[j]=='%':
res += 5
elif req[j]=='#':
res -= 7
print("%0.2f"% res)
풀이
1. 처음 테스트 개수를 위한 변수(num) 값을 입력받는다.
2. req변수에 값을 입력받고, 입력받은 첫 번째 값의 변수를 실수형으로 저장한다. (소수 둘째 자리까지이므로)
3. req입력된 길이만큼 새로운 반복문에서 조건이 맞을 때마다 연산을 진행해 준다.
오답이나 문제가 있는 경우 언제든지 댓글 부탁드리겠습니다!
궁금하신 부분도 언제든 댓글 부탁드립니다!
감사합니다 다음 포스팅 때 뵙겠습니다!
반응형
'백준 - Python' 카테고리의 다른 글
[백준 - 2750][Python] 수 정렬하기 (1) | 2022.10.08 |
---|---|
[백준 - 2525][Python] 오븐 시계 (2) | 2022.10.03 |
[백준 - 2163][Python] 초콜릿 자르기 (0) | 2022.09.28 |
[백준 - 10430][Python] 나머지 (0) | 2022.09.27 |
[백준 - 1000][Python] A+B (1) | 2022.09.20 |