woody

  • 홈
  • 태그
  • 방명록

백준 사전 DP 1

[Java] 백준 1256번 : 사전

문제소개 해결과정 다음과 같은 단계를 통해 풀이했다. 우선 출력 조건에 있듯이, 사전에 수록되어 있는 문자열의 개수가 K보다 작으면 -1을 출력해야한다. -> 사전에 수록되어 있는 문자열의 개수를 먼저 구해야함 -> a의 개수 n, z의 개수 m이 있을 때 나올 수 있는 경우의 수는 n+m_C_n -> 경우의 수 K가 최대 십억까지 가능 -> 경우의 수가 너무 많다. dp를 통해 구해야함 dp[][] 배열을 구했으면 K번째에 있는 문자열을 구해야한다. -> 편하게 모든 것은 a를 기준으로 생각한다. -> K번째 자리에 최초 a가 올 지, z가 올 지는 어떻게 판단할까? -> a를 뽑은 경우의 수는 n+m-1_C_n-1 개가 된다. -> z를 뽑은 경우의 수는 바로 뒤부터 n+m-1_C_n 개가 존재한다...

코딩테스트/백준 2024.01.04
이전
1
다음
더보기
프로필사진

기록하자, 끄적끄적

  • 분류 전체보기
    • 코딩테스트
      • 구름톤 챌린지
      • 프로그래머스
      • 백준
      • 코드트리
    • AWS
      • 이론
      • 실습
    • Spring
    • Java
    • JPA
    • CS
    • 프로젝트
      • HongsamSNS
      • Hongflix
      • HongsamIDE
      • Ticketing

최근글과 인기글

  • 최근글
  • 인기글

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바