[Python] 백준/BOJ 14650번: 걷다보니 신천역 삼 (Small) (Silver 2)

2025. 8. 6. 13:47·Algorithm/백준 (BOJ)
반응형

💻 Problem

문제 보러 가기

 

욱제는 ‘삼’이란 음절을 참 좋아한다. 인삼, 홍삼, 해삼, 삼성, 이춘삼(李春森), 삼식이, 삼시세끼, ㄴㄴ 그거 안 삼, 삼과 죽음, 알았삼, 금강삼도 식후경, 걷다보니 신천역 삼, 그리고 특히 일이삼을 좋아한다. 그래서 욱제는 3을 가지고 놀아보기로 했삼.

3개 숫자(0, 1, 2)만 가지고 N자리 3의 배수를 만들어 보삼. 만드는 배수는 자연수 이삼. 0으로 시작하는 수는 만들 수 없는 수 이삼. 3의 배수가 몇 개나 나올 수 있삼?

  • N을 입력 받으삼. (1 ≤ N ≤ 9)

 

💡 Approach

중복 순열로 N자리 수를 뽑은 다음 0으로 시작하지 않는 3의 배수이면 횟수를 센다.

사실 파이썬 itertools 모듈은 순열(permutations), 조합(combinations)만 알고 있었는데

이번에 중복 순열(product)과 중복 조합(combinations_with_replacement)도 알게 되었다.

기억할 점은 다른 건 다 인자가 (리스트, 뽑을 개수)지만 중복 순열은 (리스트, repeat=뽑을 개수)이다.

 

✏️ Solution

import sys
from itertools import product
input = sys.stdin.readline

N = int(input())
num = ['0', '1', '2']
cnt = 0

for p in product(num, repeat=N):
    if p[0] == '0':
        continue
    if int(''.join(p)) % 3 == 0:
        cnt += 1

print(cnt)

중복 순열의 시간복잡도는 3^N이다.

N의 최댓값이 9이므로 대입하면 3^9 = 19,683이다.

반응형

'Algorithm > 백준 (BOJ)' 카테고리의 다른 글

[Python] 백준/BOJ 13700번: 완전 범죄 (Silver 1)  (4) 2025.08.08
[Python] 백준/BOJ 14651번: 걷다보니 신천역 삼 (Large) (Silver 1)  (1) 2025.08.07
[Python] 백준/BOJ 1189번: 컴백홈 (Silver 1)  (0) 2025.08.05
[Python] 백준/BOJ 13422번: 도둑 (Gold 4)  (0) 2025.08.04
'Algorithm/백준 (BOJ)' 카테고리의 다른 글
  • [Python] 백준/BOJ 13700번: 완전 범죄 (Silver 1)
  • [Python] 백준/BOJ 14651번: 걷다보니 신천역 삼 (Large) (Silver 1)
  • [Python] 백준/BOJ 1189번: 컴백홈 (Silver 1)
  • [Python] 백준/BOJ 13422번: 도둑 (Gold 4)
올콩
올콩
콩 심은 데 콩 난다
  • 올콩
    콩스토리
    올콩
  • 전체
    오늘
    어제
    • 분류 전체보기 (196)
      • SSAFY (10)
      • Algorithm (114)
        • 이론 (6)
        • 백준 (BOJ) (107)
        • 프로그래머스 (1)
      • Trouble Shooting (9)
      • Frontend (6)
      • React (17)
      • Next.js (4)
      • Vue (4)
      • Node.js (2)
      • HTML (9)
      • DevOps (4)
        • Git (4)
      • Language (9)
        • JavaScript (0)
        • Java (9)
      • Embedded (1)
      • CS (5)
        • Network (1)
        • Blockchain (4)
      • 자격증 (2)
  • 블로그 메뉴

    • GitHub
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Error
    백트래킹
    재귀
    Next.js
    DP
    브루트포스
    우선순위큐
    SSAFYcial
    오블완
    React
    SSAFY
    Java
    힙
    구현
    수학
    블록체인
    html5
    알고리즘
    백준
    Heap
    중복조합
    파이썬
    싸피
    순열
    dfs
    강의
    Algorithm
    bfs
    중복순열
    티스토리챌린지
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
올콩
[Python] 백준/BOJ 14650번: 걷다보니 신천역 삼 (Small) (Silver 2)
상단으로

티스토리툴바