alpyrithm_알파이리즘

[알고리즘][Python] 백준(BOJ) 16968 차량 번호판 1_파이썬 본문

Algorithm/백준 알고리즘_Python

[알고리즘][Python] 백준(BOJ) 16968 차량 번호판 1_파이썬

알파이 2020. 11. 12. 08:37

 

16968 차량 번호판 1    www.acmicpc.net/problem/16968

 

16968번: 차량 번호판 1

00부터 99까지 총 100가지 중에서 00, 11, 22, 33, 44, 55, 66, 77, 88, 99가 불가능하다.

www.acmicpc.net

 

 

문제 풀기 전 공부할 것 : 수학, 조합론, 백트래킹

 

 

 

 

 

 

 

풀이

<내용>

  • c는 문자가 위치하는 자리이므로 가능한 문자는 26개
  • d는 숫자가 위치하는 자리이므로 가능한 숫자는 10개
  • 연속해서 나타나는 경우만 고려하면 된다.
  • 연속해서 나타나는 경우 앞에서 사용한 문자 또는 숫자를 사용하지 않아야 하므로 (26-1) 또는 (10-1)의 경우의 수가 있다.

 

 

<코드>

nums = {'c':26, 'd':10}
car_nums = input()
n = len(car_nums)
res = nums[car_nums[0]]
for i in range(1, n):
    mul = nums[car_nums[i]]
    if car_nums[i] == car_nums[i-1]:
        mul -= 1
    res *= mul
    
print(res)

 

 

 

 

 

 

 

 

728x90
반응형
Comments