Baekjoon 문제 풀기 (2908번 : 상수) Python
2908번 : 상수
1. 문제읽기
문자열 뒤집기
문자열 뒤집는 방법을 알면 쉬운 문제이다.
난 생각나지 않아서 그냥 문자열을 뒤집는 코드를 짰다..
2. 제출 코드
a, b = map(list, input().split())
r_a = ""
r_b = ""
for i in range(len(a)-1, -1, -1): # 2부터 0까지
r_a += a[i]
for i in range(len(b)-1, -1, -1):
r_b += b[i]
print(max(r_a, r_b))
3. 공부할 것
list slicing [::-1]
step을 사용하면 리스트를 뒤집을 수 있다.
리스트, 문자열 모두 사용 가능하다.
list slicing으로 문제를 풀면 아래와 같다.
a, b = input().split()
r_a = int(a[::-1])
r_b = int(b[::-1])
print(max(r_a, r_b))
reverse()
현재 리스트를 역순으로 뒤집어 준다.
sort
함수와 같이 있는 리스트를 바로 뒤집어주기때문에 주의.
reverse
함수로 문제를 풀려면 join
함수를 알아야 한다.
join()
리스트에 있는 요소를 문자열로 바꾸어 반환하는 함수.
‘구분자’.join(리스트) : ‘ ‘ 안의 구분자를 넣어서 하나의 문자열로 합쳐준다.
‘‘.join(리스트) : 구분자가 공백으로, 리스트를 공백없이 하나로 합쳐준다.
reverse
함수와 join
함수로 문제를 풀어보면 아래와 같다.
a, b = map(list, input().split())
a.reverse()
b.reverse()
r_a = int(''.join(a))
r_b = int(''.join(b))
print(max(r_a, r_b))
리스트를 문자열로 합쳐주는 함수는 유용하게 쓰일 것 같으니 꼭 외워두어야겠다.
댓글남기기