비슷한 유형의 문제들이라 하나로 묶어서 푼 내용을 정리하겠다.
원래는 푼 날에 올리려고 했는데 공부에 소홀 했던 것 같다.
각설하고, 문제를 보자
1000번
a와 b를 받아 더하여 출력하는 간단한 예제이다.
a, b = input().split()
print(int(a)+int(b))
split 메서드를 사용하여 한번에 두개의 값을 받아 진행하였다.
마찬가지로 1000번 문제를 보면
이 문제도 마찬가지로
a, b = input().split()
print(int(a)-int(b))
print문의 +를 -로 바꿔주면 쉽게 출력할 수 있다.
여기서 변수 n을 만들어 값을 저장하고 n을 출력하는 식으로도 할 수 있다.
a, b = input().split()
n = int(a)-int(b)
print(n)
그런데 보면 int(a) 이런식으로 받을 값을 int형으로 바꿔주는 것을 볼 수 있을 것이다.
이유는 split() 메서드는 입력받은 값을 string 값으로 저장해주기 때문이다.
그렇기 때문에 자료형 변경이 보기 불편하다면 map() 함수를 사용하는 것도 방법이다.
a, b = map(int, input().split())
이것은 map 함수를 써서 입력받은 값을 int 자료형으로 바꿔주는 예시이다.
10998번
곱해주는 간단한 문제이다.
a, b = input().split()
print(int(a)*int(b))
1008번
나누기다!
A, B = input().split()
print(int(A)/int(B))
10869번
위의 했던것을 한번에 하는 문제이다.
나는 첫번째 제출은 틀렸는데 그 이유를 한번 알아보자
A, B = input().split()
print(int(A)+int(B))
print(int(A)-int(B))
print(int(A)*int(B))
print(int(A)/int(B))
print(int(A)%int(B))
이게 틀렸다고 한 코드이고
아래가 정답인 코드이다.
A, B = input().split()
print(int(A)+int(B))
print(int(A)-int(B))
print(int(A)*int(B))
print(int(A)//int(B))
print(int(A)%int(B))
어떤 차이가 있는지 보이는가?
/ ← 슬래시가 한 번이랑 두 번 차이인것을 알 수 있다.
슬래시(/) 한번은 나누기만 하는 것이고, 더블슬래시(//)는 몫만 구하는 것이다.
즉 7과 3을 넣으면 슬래시는 2.3333333이 출력이되고 더블슬래시는 2가 출력이 되는 것을 볼 수 있을 것이다.
피드백은 언제나 환영입니다.
'IT관련 공부 > 백준(BaekJoon)' 카테고리의 다른 글
10171번, 10172번, 25083번 (0) | 2022.10.12 |
---|---|
10430번, 2588번 (0) | 2022.10.12 |
10926번, 18108번, 3003번 (0) | 2022.10.12 |
백준 10718번 문제 (0) | 2022.09.06 |
백준 2557번 문제 (0) | 2022.09.06 |