[이코테] 곱하기 혹은 더하기 - 그리디

jckim22·2023년 6월 26일
0

[ALGORITHM] STUDY (PS)

목록 보기
4/86

1. 문제 설명

2. 문제 검토

S의 연산 문자가 0과 1이 아니라는 조건 하에 곱하기를 해주는 것이 가장 최적의 해를 구할 수 있는 방법이기 때문에 그리디 기법을 사용하는 것이 알맞다고 할 수 있다.

문자열이기 때문에 정수형으로 형변환하여 코드를 짜는 것이 중요하다.

3. 풀이

S = input()

cur =int(S[0])
for x in range(len(S)-1):
    if S[x]=='0' or S[x+1]=='0':
        cur+=int(S[x+1])
    elif S[x]=='1' or S[x+1]=='1':
        cur+=int(S[x+1])
    else:
        cur*=int(S[x+1])
        
print(cur)
        
    
  1. 0과 1일 때는 더해준다.
  2. 이 외에는 곱해준다.

4. 총평

매우 쉬운 문제이다.
허나 문제의 최적의 해를 그리디 기법으로 구할 수 있는지에 대한 검토 능력을 기를 수 있는 아주 좋은 예시이다.

profile
개발/보안

0개의 댓글