https://www.acmicpc.net/problem/8595
이 문제는 사실 알고리즘이 특별하다기보다 구현하는데 있어서 조금 생각이 필요했던 문제였습니다.
어설프게 for문을 여러번 돌릴경우에 시간초과가 나기 때문에, 주어진 문자열을 for문 한번에 돌려
해답을 찾아내는 구현을 하는것이 관건입니다.
이를 위해서 앞에서 부터 문자열을 탐색하는 것이 아닌 뒤에서 부터 문자열을 탐색하여
숫자가 하나씩 나올 때마다 (자리수) * 해당숫자, 즉 처음 나온 숫자라면 1*(해당 숫자)
두번째 연속으로 나온 숫자라면 10*(해당숫자), 이런 식으로 탐색하여 더해주는것이 해답입니다.
코드는 아래와 같습니다.
'알고리즘 > 백준 알고리즘' 카테고리의 다른 글
[백준, 파이썬] 15664번 N과 M(10) (0) | 2020.07.28 |
---|---|
[백준, 파이썬] 2193번 이친수 (0) | 2020.07.28 |
[백준, 파이썬] 15657 N과 M(8) (0) | 2020.07.20 |
[백준, 파이썬] 1937번 욕심쟁이 판다 (0) | 2020.07.20 |
[백준, 파이썬] 1912번 연속합 (0) | 2020.07.19 |