Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
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
Archives
Today
Total



GitHub Contribution
Loading data ...
관리 메뉴

초보 개발자의 일기

2908번 - 상수 본문

열공일기/코딩연습

2908번 - 상수

Da다 2021. 5. 23. 16:18
 

2908번: 상수

상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두

www.acmicpc.net

문제

상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다.

상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다.

두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다.

출력

첫째 줄에 상수의 대답을 출력한다.

나의 제출 - Python

코드가 길게 나와서 만족스럽지는 못하다.. 일단 리스트 insert를 통해 값을 거꾸로 저장해두고, 문자열을 더해서 다시 합쳐줬다. 그리고 int로 변환해서 A와 B중 어느 수가 더 큰지 계산해서 출력했다.

A ,B = input().split()    # input저장 : 공백으로 구문
A,B = str(A),str(B)       # 문자열로 변환
li_A,li_B = [],[]         # 빈 list 생성

for i in A:               # 숫자를 거꾸로 저장
    li_A.insert(0,i)
for i in B:
    li_B.insert(0,i)

A,B = '',''               # 빈 문자열 생성

for i in li_A:            # 문자열을 합쳐준다
    A = A + i

for i in li_B:
    B = B + i

A, B = int(A), int(B)     # int로 변환

if A>B :                  # 비교 후 출력
    print(A)
else:
    print(B)
734 893     # 입력
437           # 출력

수정

문자열을 거꾸로 출력해서 저장 후 int로 변환, 비교해서 출력한다.

A, B = input().split()
A, B = str(A), str(B)
A = A[::-1]
B = B[::-1]
A, B = int(A), int(B)
if A > B:
    print(A)
else:
    print(B)

'열공일기 > 코딩연습' 카테고리의 다른 글

2941번 - 크로아티아 알파벳  (0) 2021.05.26
4344번 - 평균은 넘겠지  (0) 2021.05.25
1152번 - 단어의 개수  (0) 2021.05.22
1157번 - 단어 공부  (0) 2021.05.21
2675번 - 문자열 반복  (0) 2021.05.20
Comments