λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
πŸƒ algorithm/boj

BOJ 1105 - νŒ”

by HandHand 2021. 3. 3.

문제

λ°±μ€€ 온라인 저지 - 1105번

풀이 κ³Όμ •

L κ³Ό R 이 μ£Όμ–΄μ§ˆ λ•Œ ν•΄λ‹Ή 두 수 사이에 μ‘΄μž¬ν•˜λŠ” λͺ¨λ“  μˆ˜λ“€ μ€‘μ—μ„œ 8 의 κ°œμˆ˜κ°€ κ°€μž₯ μž‘μ€ 경우λ₯Ό μ°ΎλŠ” λ¬Έμ œμž…λ‹ˆλ‹€.

μ—¬κΈ°μ„œ μ•Œμ•„μ•Όν•  점은 두 수의 μžλ¦¬μˆ˜κ°€ λ‹€λ₯Ό 경우 무쑰건 8 의 κ°œμˆ˜κ°€ 0인 κ²½μš°κ°€ μ‘΄μž¬ν•œλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.
예λ₯Ό λ“€μ–΄ 100, 1000, 10000 ... 등이 μžˆμŠ΅λ‹ˆλ‹€.

λ˜ν•œ L 은 R 보닀 κ°™κ±°λ‚˜ ν¬λ‹€λŠ” μ „μ œκ°€ 있기 λ•Œλ¬Έμ— 각 자리수λ₯Ό λΉ„κ΅ν–ˆμ„ λ•Œ
R 의 νŠΉμ • μžλ¦¬μˆ˜μ—μ„œ L 보닀 μ»€μ§€λŠ” μœ„μΉ˜κ°€ μ‘΄μž¬ν•©λ‹ˆλ‹€.
(λ§Œμ•½ 두 μˆ˜κ°€ κ°™λ‹€λ©΄ μ‘΄μž¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.)

ν•΄λ‹Ή 자리수 μ΄ν›„μ˜ μˆ«μžλ“€μ€ 탐색할 ν•„μš”κ°€ μ—†λŠ”λ° μ΄λŠ” μ΄ν›„μ˜ μˆ«μžλ“€μ„ λͺ¨λ‘ 0으둜 ν•˜λ©΄
8이 λ“±μž₯ν•˜μ§€ μ•ŠλŠ” 경우λ₯Ό λ§Œλ“€ 수 있기 λ•Œλ¬Έμž…λ‹ˆλ‹€.

λ”°λΌμ„œ 숫자의 κ°€μž₯ μ•ž μžλ¦¬λΆ€ν„° 탐색을 μˆ˜ν–‰ν•˜λ‹€κ°€ 처음으둜 두 μžλ¦¬μˆ˜κ°€ λ‹¬λΌμ§€λŠ” 수λ₯Ό λ°œκ²¬ν•˜λ©΄ 탐색을 λ©ˆμΆ”κ³ ,
μ΄μ „κΉŒμ§€ 발견된 8 의 개수λ₯Ό λ°˜ν™˜ν•˜λ©΄ λ©λ‹ˆλ‹€.

μ½”λ“œ


import sys

L, R = list(sys.stdin.readline().split())


def solution():
    if len(L) != len(R):
        return 0

    answer = 0
    for i in range(len(L)):
        if L[i] != R[i]:
            break
        if L[i] == R[i] and L[i] == '8':
            answer += 1

    return answer


print(solution())
λ°˜μ‘ν˜•

'πŸƒ algorithm > boj' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

BOJ 19941 - 햄버거 λΆ„λ°°  (0) 2021.03.08
BOJ 16469 - μ†Œλ…„ 점프  (0) 2021.03.05
BOJ 13565 - 침투  (0) 2021.03.05
BOJ 16509 - μž₯κ΅°  (0) 2021.03.03
BOJ 3190 - λ±€  (0) 2021.03.01

πŸ’¬ λŒ“κΈ€