반응형
문제
https://www.acmicpc.net/problem/2908


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
32
import sys
 
n,m=sys.stdin.readline().split()
print(type(n))
print(m)
n=list(n)
m=list(m)
 
########################################함수를 사용하지 않을경우
n_reverse=[]
m_reverse=[]
for i in range(len(n),0,-1):#배열 뒤집기
    n_reverse.append(n[i-1])
for i in range(len(m),0,-1):
  m_reverse.append(m[i-1])
 
 
 
str_n_reverse=''
for i in range(len(n_reverse)):#문자열이어주기
    str_n_reverse+=n_reverse[i]
 
str_m_reverse=''
for i in range(len(m_reverse)):
    str_m_reverse+=m_reverse[i]
 
 
 
if int(str_n_reverse)>int(str_m_reverse): #결과 출력
    print(str_n_reverse)
else:
  print(str_m_reverse)

cs



뒤집고 합치는 코드가 굉장히 길다 짧게도 할수있게지만 대충 이런 느낌일 것이다.

이제 reverse와 join을 활용해 보겠다.


1
2
3
4
5
6
7
8
9
10
11
12
13
import sys
 
n,m=sys.stdin.readline().split()
 
n=list(n)
m=list(m)
n_reverse=''.join(reversed(n))
m_reverse=''.join(reversed(m))
 
if int(n_reverse)>int(m_reverse): #결과 출력
     print(n_reverse)
else:
    print(m_reverse)
cs



뒤집고 합치는 과정이 굉장히 줄어든것을 볼수있다.

속도도 조금 더 빠르게 나오는거 같다.





반응형

'알고리즘(python) > 문자열' 카테고리의 다른 글

[Python]문자열 백준 5622  (0) 2019.12.19
[Python]문자열 백준 1152  (0) 2019.12.18
[Python]문자열 백준 1157  (0) 2019.12.18
[Python]문자열 백준 2675  (0) 2019.12.18
[Python]문자열 백준 11720  (0) 2019.12.18
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기