매우 단순한 수학문제임에도 불구하고 몇 번이고 틀려서 계속 고민하다가 겨우 왜 그런지 알게된 문제라서 이렇게 정리를 해본다.
문제를 보다시피 매우 간단한 문제이다.
다만, 한 가지를 간과한 것이 있어서 계속 틀렸다.
숫자가 예제에서 "8 14" 라고 되어있는데, 잊지 말자... "14 8"도 들어갈 수 있고, "13, 14"도 들어갈 수 있음을...
처음에 그래서 매우 간단하게 만든 코드이자 계속 틀렸다고 나온 코드가 다음의 코드이다.
(물론, 위에서 주어진 예제인 "8 14"는 무척이나 잘 돌아간다...)
1
2
3
4
5
|
num1, num2 = list(map(int, input().split()))
btw_num = num2-num1-1
print(btw_num)
for i in range(num1+1, num2):
print(i, end=' ')
|
그리고 max와 min값을 새로 처리해서 만들어야 한다.
결국 다음과 같은 코드가 정답인 코드이다.
1
2
3
4
5
6
7
8
9
10
|
a, b = list(map(int, input().split()))
num2 = max(a, b)
num1 = min(a, b)
btw_num = num2-num1-1
if num1 == num2 or num1+1 == num2:
btw_num = 0
print(btw_num)
for i in range(num1+1, num2):
print(i, end=' ')
|
cs |
출처: https://www.acmicpc.net/problem/10093
'코딩 문제풀이 및 연습 > Python 연습' 카테고리의 다른 글
[백준]13597_Tri-du 파이썬 (0) | 2021.07.16 |
---|---|
[백준]11367_Report Card Time 파이썬 (str과 int를 space로 나눠서 동시에 입력받기) (0) | 2021.07.16 |
[백준]11104_Fridge of Your Dreams 파이썬 (0) | 2021.07.15 |
[백준 1712번]손익분기점_파이썬 (0) | 2020.08.15 |
파이썬으로 로또번호 뽑기 (0) | 2020.08.13 |