광규니
광규니네
광규니
전체 방문자
오늘
어제
  • 분류 전체보기 (154)
    • 알고리즘 (100)
      • 알고리즘 개념 (2)
      • 문제 풀이 (96)
    • 주절주절 (19)
      • 자격증, 활동 후기 (4)
      • 전시회 후기 (3)
      • 이모저모 (2)
      • 회고 (3)
      • 뜨럼 (7)
    • 운영체제 (9)
    • 개발 지식 (9)
      • Apple Watch (4)
      • MySQL (2)
      • Eclipse (1)
      • XCode (1)
    • 네트워크 공부 (1)
    • 데이터베이스 공부 (5)
    • Java 공부 (7)
    • TMP (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 자바
  • BFS
  • 알고리즘
  • DP
  • 드린이
  • 파이썬
  • 컴퓨터 사이언스
  • BOJ
  • 합주
  • 프로그래머스
  • OS
  • 백준
  • 애플워치 앱
  • 구현
  • 운영체제
  • 티스토리챌린지
  • 애플워치 앱 만들기
  • 개념
  • 오블완
  • 다이나믹 프로그래밍

최근 댓글

최근 글

티스토리

250x250
hELLO · Designed By 정상우.
광규니

광규니네

알고리즘/문제 풀이

[Python/파이썬 11057 백준] 오르막 수 (다이나믹 프로그래밍)

2021. 4. 16. 00:35
반응형

 

www.acmicpc.net/problem/11057

 

11057번: 오르막 수

오르막 수는 수의 자리가 오름차순을 이루는 수를 말한다. 이때, 인접한 수가 같아도 오름차순으로 친다. 예를 들어, 2234와 3678, 11119는 오르막 수이지만, 2232, 3676, 91111은 오르막 수가 아니다. 수

www.acmicpc.net

풀이

10844 쉬운 계단수 문제랑 굉장히 유사한 문제입니다..

유사한 문제 풀어보면 쉽게 풀리네용...

 

주의할 점은 첫번째 0인 숫자가 들어갈 수 있다는거구, 오름차순 숫자 갯수를 찾아야합니다.

또한 이차원 리스트 사용

 

숫자를 일일히 구하다보면 공통점이 있는데

마지막 수가 0일 경우 다음 숫자는 1~9가 가능하고

1일 경우 2~9

2일 경우 3~9

.

.

.

9는 다음 숫자가 들어올 수 없어서 dp로 따지게 되면 전에 해당하는 값을 유지시켜줍니다.

# 오르막수 오름차순인 수를 구하는 문제
# 주의 첫번째 수가 0도 들어갈 수 있음
# 10844 쉬운 계단수랑 유사한 문제
# 이 문제는 0일때 1~9 ,1일때 2~9, 2일때 3~9 ....... 9는 그냥 전에꺼랑 같도록

import sys
input=sys.stdin.readline

n= int(input())
dp=[[0]*10 for i in range(n+1)]

for i in range(10):
    dp[1][i]=1
    
for i in range(2,n+1):
    for j in range(10):
        if j==9:
            dp[i][j]=dp[i-1][j]
        else:
            for k in range(10):
                if k<j:
                    continue
                dp[i][j]+=dp[i-1][k] 

print(sum(dp[n])%10007)

 

 

이 문제도 풀어보세요

금방 풀릴겁니당..

www.acmicpc.net/problem/10844

 

 

10844번: 쉬운 계단 수

첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다.

www.acmicpc.net

 

반응형
저작자표시 (새창열림)

'알고리즘 > 문제 풀이' 카테고리의 다른 글

[Python/파이썬 프로그래머스] 불량 사용자  (0) 2021.04.29
[Python/파이썬 프로그래머스] 튜플  (0) 2021.04.29
[Python/파이썬 백준 13913] 숨바꼭질 4 (BFS)  (0) 2021.04.15
[Python/파이썬 15990 백준] 1, 2, 3 더하기 5  (1) 2021.04.13
[Python/파이썬 13549 백준] 숨바꼭질 3  (0) 2021.04.10
    '알고리즘/문제 풀이' 카테고리의 다른 글
    • [Python/파이썬 프로그래머스] 불량 사용자
    • [Python/파이썬 프로그래머스] 튜플
    • [Python/파이썬 백준 13913] 숨바꼭질 4 (BFS)
    • [Python/파이썬 15990 백준] 1, 2, 3 더하기 5
    광규니
    광규니
    공부 및 일상 올리기~

    티스토리툴바