Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 수열
- 코딩테스트
- 그리디알고리즘
- 코딩문제
- db
- database
- Python
- 소수
- 그리디
- 인프콘2024
- 기초
- 수학
- 마크다운문법
- 그래프
- 백준
- 데이터베이스
- 코테
- httpCode
- 데이터
- 알고리즘기초
- NoSQL
- 탐색알고리즘
- 마크다운
- mongoDB
- chatGPT
- 파이썬
- Markdown
- Algorithm
- 알고리즘
- 몽고DB
Archives
- Today
- Total
Dev_from the Bottom
#34. Algorithm24_python) 상수_백준 2908 본문
문제) 상수
- 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다.
- 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다.
- 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다.
- 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다.
- 두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.
입력)
- 첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다.
출력)
- 첫째 줄에 상수의 대답을 출력한다.
step1) 테스트1 : 숫자 뒤집기 로직
n1 = 734
n1_str = str(n1) # 뒤집기 위해, 문자열로 전환
n1_str_reverse = n1_str[::-1] # 뒤집기 : 문자열 슬라이싱 이용
# n1_str_reverse
n1_reverse = int(n1_str_reverse) # int로 전환
print(n1_reverse)
>>>
437
step2) 테스트2 : 숫자 뒤집기 메서드
def reverse(n):
n_str = str(n)
n_str_reverse = n_str[::-1] # 뒤집기
n_reverse = int(n_str_reverse)
return n_reverse
print(reverse(734))
>>>
437
step3) 시도1 : 성공
def reverse(n):
n_str = str(n)
n_str_reverse = n_str[::-1]
n_reverse = int(n_str_reverse)
return n_reverse
n1, n2 = map(int, input().split())
n1 = reverse(n1)
n2 = reverse(n2)
if n1 > n2:
print(n1)
else:
print(n2)
>>>
734 893
437
step4) 시도2 : 메서드 사용하지 않고
- 어차피 input( )을 통해 입력받은 내용이 '문자열'임을 활용
n1, n2 = input().split()
n1 = int(n1[::-1])
n2 = int(n2[::-1])
if n1 > n2:
print(n1)
else :
print(n2)
>>>
734 893
437
step5) 최종 : 삼항 연산자
n1, n2 = input().split()
n1 = int(n1[::-1])
n2 = int(n2[::-1])
print(n1 if n1 > n2 else n2)
>>>
734 893
437
# 배운 점
- input( ) 메서드에는 '문자열'로 받음!
- 삼항 연산자 활용
# 소회
- 삼항 연사자가 일반 if문에 비해 훨씬 간결
- 하지만 막상 결과를 보니, 미묘하지만 시간이 더 걸림
- 자원 활용 및 코드의 간결성 측면에서 삼항 연산자를 사용하는 것이 좋은가? -> 의문
'Algorithm_study' 카테고리의 다른 글
#36. Algorithm26_python) 백대열_백준 14490 (0) | 2022.06.09 |
---|---|
#35. Algorithm25_python) 다이얼_백준 5622 (0) | 2022.06.09 |
#33. Algorithm23_python) 알파벳 찾기_백준 10809 (0) | 2022.06.03 |
#32. Algorithm22_python) 숫자의 합_백준 11720 (0) | 2022.06.02 |
#31. Algorithm21_python) 평균은 넘겠지_백준 4344 (0) | 2022.06.01 |
Comments