본문 바로가기

Challenge/백준

num = 21867

728x90
반응형

https://www.acmicpc.net/problem/21867

 

21867번: Java Bitecode

첫째 줄에 코드의 길이를 나타내는 정수 $N$이 주어진다. ($1 \leq N \leq 200\,000$) 둘째 줄에 알파벳 대문자로 이루어진 코드 $S$가 주어진다.

www.acmicpc.net

한이는 왜 자바를 싫어하게 되었을까~

 

어쨋든 자바를 싫어하기 때문에 문자 "J", "A", "V" 중 한 개라도 입력받으면

그 문자는 제외하고 출력하면 된다. 

 

파이썬은 다음과 같이

 

N = int(input())
S = input()
ans = ""

for i in range(len(S)) :
    if S[i] == "J" :
        pass
    elif S[i] == "A" :
        pass
    elif S[i] == "V" :
        pass
    else :
        ans = ans + S[i]

if len(ans) != 0:
    print(ans)
else :
    print("nojava")

 

다시 코드를 보니까 진짜 pythonic하지 않다...

 

앞으로는 pythonic하게 쓰는 법을 배워야 겠다.

 

예를 들어 S변수에 replace를 활용해서 굳이 변수를 안만들어도 되게

ex)

S.replace('J','').replace('A','').replace('V','')

 

728x90
반응형

'Challenge > 백준' 카테고리의 다른 글

num = 20944  (0) 2021.08.30
num = 2577  (0) 2021.08.10
num = 21965  (0) 2021.08.07
num = 1000  (0) 2021.07.19
num = 21964  (0) 2021.07.08