https://www.acmicpc.net/problem/2908
2908번: 상수
상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두
www.acmicpc.net
📝 풀이1.
a,b = input().split()
c= int(a[2]+a[1]+a[0])
d= int(b[2]+b[1]+b[0])
if c>d :
print(c)
else:
print(d)
📝 풀이 2.
a,b = input().split()
a = int(a[::-1]) # [::-1] : 역순
b = int(b[::-1])
if a > b:
print(a)
else :
print(b)
입력받는 두 개의 숫자를 역순으로 바꾸어서 바뀐 숫자 중 큰 숫자를 출력하는 문제에서 문자열을 역순으로 재배치할 줄 안다면 쉽게 풀 수 있다. [::-1] 연산자를 이용하면 문자를 역순으로 재배치할 수 있다.
숫자 타입은 문자열처럼 분리해서 사용할 수 없어서 먼저 숫자로 변환했다. 숫자를 [::-1] 연산자로 지정할 때에는 TypeError가 발생한다. 'int' object is not subscriptable 사유로 int 타입은 사용 할 수 없다고 한다.
📝 풀이 3. 삼항 연산자 표현식 코드
a, b = input().split()
a = int(a[::-1]) # [::-1] : 역순
b = int(b[::-1])
print(a) if a > b else print(b)
삼항 연산자를 사용할 때는 [ 참일 때 값 if 조건식 else 거짓일 때 값 ] 형태로 사용한다. if 조건식이 길어진다면 한 줄로 작성할 때 가독성을 해쳐서 사용하지 않지만 조건식이 간단한 경우는 한 줄로 표현하면 코드가 간단해져서 사용하기에 편리하다.
'Study > 코딩' 카테고리의 다른 글
[백준 11718번 파이썬] 그대로 출력하기 (0) | 2023.03.08 |
---|---|
[백준 5622번 파이썬] 다이얼 (0) | 2023.03.08 |
[백준 1152번 파이썬] 단어의 개수 (0) | 2023.03.08 |
[백준 1157번 파이썬] 단어공부 (0) | 2023.03.08 |
[백준 10172번 파이썬] 개 (0) | 2023.02.06 |