본문 바로가기
  • AI 개발자가 될래요
Python

[코테공부/Softeer/Python] [한양대 HCPC 2023] Yeah, but How?

by 꿀개 2025. 1. 31.

[코테공부/Softeer/Python] [한양대 HCPC 2023] Yeah, but How?

 

https://softeer.ai/practice/9498

 

Softeer - 현대자동차그룹 SW인재확보플랫폼

 

softeer.ai

 

[한양대 HCPC 2023] Yeah, but How?
[한양대 HCPC 2023] Yeah, but How?

 

나의 풀이

1. 아이디어

- Python 5초 안에 풀어야 하므로 시간 효율화를 위해 pop() 사용.

- str을 list로 바꿔서 pop()을 사용하는데, 이는 마지막 원소부터 출력하기 때문에 원본 문자열 S의 순서를 뒤집음.

- 처음 시작 괄호는 '('이 될 수 밖에 없음.

- previous와 present 변수를 설정하여 이전에 들어온 괄호와 현재 괄호가 같으면 넘어가고, 다르면 1 혹은 +를 추가함.

 

2. 코드

import sys

s = list(input())[::-1]

previous = s.pop()
answer = previous

while len(s) > 0:
    present = s.pop()
    
    if previous == present:
        answer += present
    else:
        if present == ')':
            answer += '1' + present
        else:
            answer += '+' + present
            
    previous = present
    
print(answer)

 

결과

[한양대 HCPC 2023] Yeah, but How?