본문 바로가기
코딩테스트/백준 알고리즘 풀이

[백준 알고리즘/python] 백준 2908번 상수, 파이썬

by Godgil 2020. 3. 19.

백준 알고리즘 2908번 상수, 파이썬

 

이번 문제는 백준 알고리즘의 2908번 상수 문제이다. 파이썬으로 풀어봤다.

 

결국 문제는 숫자가 두개 주어지는데, 이 숫자를 거꾸로 뒤집어서 대소를 비교하는 문제이다.

 

#조건 1. 첫쨰 줄에 두 수 A,B가 주어진다.

#조건 2. 두 수는 같지 않은 세자리 수이며, 0이 포함되어 있지않다.

 

문제에 대한 내 생각이다.

#생각 1. 거꾸로 돌리는 건 for문에서 i를 반대로 읽으면 될 것 같다.( 세자리 수 고정이니까)

#생각 2. 그 수를 따로 저장해서 대소를 비교하고 출력

 

생각에 대한 내 코드이다.

 

num1, num2 = input().split()
numA, numB = str(), str()
for i in range(-1,-4,-1):# 세 자리수 고정이라서 가능한 일
    numA = numA + num1[i]
    numB = numB + num2[i]

numA, numB = int(numA),int(numB)

print(max(numA,numB))

   

간단했다. for문에 range를 쓰면서 마지막 인수는 원래 기본값으로 1씩 더해지는 값이다.

 

이 값을 -1로 변경시켜서 문자열을 거꾸로 읽어들이고, 그 문자열을 다른 변수에다 저장한게 코드의 전부이다.

 

ㅂ문제출처

https://www.acmicpc.net/problem/2908

 

2908번: 상수

문제 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할

www.acmicpc.net

 

댓글