프로그래머스

숫자 타자 습

2023. 8. 23. 14:12
import java.util.*;

class Solution {
    static int[][] cost = {
        { 1, 7, 6, 7, 5, 4, 5, 3, 2, 3 },
        { 7, 1, 2, 4, 2, 3, 5, 4, 5, 6 },
        { 6, 2, 1, 2, 3, 2, 3, 5, 4, 5 },
        { 7, 4, 2, 1, 5, 3, 2, 6, 5, 4 },
        { 5, 2, 3, 5, 1, 2, 4, 2, 3, 5 },
        { 4, 3, 2, 3, 2, 1, 2, 3, 2, 3 },
        { 5, 5, 3, 2, 4, 2, 1, 5, 3, 2 },
        { 3, 4, 5, 6, 2, 3, 5, 1, 2, 4 },
        { 2, 5, 4, 5, 3, 2, 3, 2, 1, 2 },
        { 3, 6, 5, 4, 5, 3, 2, 4, 2, 1 }
    };
    static String num="";
    static int N;
    static int answer;
    public int solution(String numbers) {
        answer = Integer.MAX_VALUE;
        num=numbers;
        N=numbers.length();
        
        dfs(0,4,6,0);
        
        return answer;
    }
    
    static void dfs(int depth, int L, int R, int sum){
        if(depth==N){
            answer = Math.min(answer,sum);
            return;
        }
        
        int targetNumber = num.charAt(depth)-'0';
        if(R!=targetNumber)dfs(depth+1,targetNumber,R,sum+cost[L][targetNumber] );
        if(L!=targetNumber)dfs(depth+1,L,targetNumber,sum+cost[targetNumber][R] );
        
    }
    
}

첨엔 이 방식으로 풀었음. 

근데 이렇게 되면 완탐을 하고, 시간이 터짐

'프로그래머스' 카테고리의 다른 글

2차원 동전 뒤집기  (0) 2023.08.25
프로그래머스  (0) 2023.08.22
프로그래머스 - 표현 가능한 이진 트리  (0) 2023.08.21
프로그래머스 - 부대복귀  (0) 2023.08.19
두 큐의 합 같게 만들기 (카카오 기출 level2)  (0) 2023.01.12
'프로그래머스' 카테고리의 다른 글
  • 2차원 동전 뒤집기
  • 프로그래머스
  • 프로그래머스 - 표현 가능한 이진 트리
  • 프로그래머스 - 부대복귀
E재HO
E재HO
E재HO
나의 코딩일지
E재HO
전체
오늘
어제
  • 분류 전체보기 (241)
    • 프로젝트 (1)
    • Web (4)
    • JAVA (4)
      • 자료구조 (3)
    • c++ (2)
    • 알고리즘 (10)
    • 스프링 (9)
      • 소셜로그인 (2)
    • JPA (3)
    • 데이터베이스 (0)
    • 백준 (140)
    • 프로그래머스 (42)
    • front (2)
      • 리액트 (1)
    • SAFFY (5)
    • it시사 이슈 (3)
    • 일상 (1)
    • MSA(마이크로 서비스 아키텍처) (14)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

최근 댓글

최근 글

hELLO · Designed By 정상우.
E재HO
숫자 타자 습
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.