[프로그래머스][Level2][Java] 점프와 순간이동

2022. 4. 8. 11:28·프로그래머스/Level 2

문제

문제가 길어서 문제 링크를 남긴다.

https://programmers.co.kr/learn/courses/30/lessons/12980

 

코딩테스트 연습 - 점프와 순간 이동

OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈

programmers.co.kr

 

 

풀이 코드

public int solution(int n) {    //점프와 순간이동
    int ans = 0;
    while(n>0){                 //자세한 풀이는 블로그에 기재
        ans += n%2;
        n = n/2;
    }
    return ans;
}

이 문제를 읽어보면 n = (A x 2) + B꼴로 나타내면 A+B가 최소 건전지 사용량이 되는데

대신 여기서 A가 또 a x 2 + b꼴로 나타내어지면 최소건전지 사용량은 a+b+B가 된다.

이런 식으로 A가 a x 2 + b꼴로 안나타내어질 때까지 계속 나누어서 그때의 나왔던 B값들과 마지막에 나오는 A값을

더해주면 최소 건전지 사용량이 된다.

그래서 ans += n%2; -> 이 부분으로 B값들의 값을 구하고 n = n/2; 으로 A를 a x 2 + b꼴로 안될 때까지 계속 나누어준다.

 

이 문제는 의외로 풀이코드가 간단한데 다른 사람들은 뭔가 if문을 써서 비교적 복잡하게 나타냈길래 한번 내가 푼 방식을 써봤다.

저작자표시 비영리 (새창열림)

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

[프로그래머스][Level2][Java] 튜플  (0) 2022.04.14
[프로그래머스][Level2][Java] 짝지어 제거하기  (0) 2022.04.14
[프로그래머스][Level2][Java] 영어 끝말잇기  (0) 2022.04.04
[프로그래머스][Level2][Java] n^2배열 자르기  (0) 2022.04.04
[프로그래머스][Level2][Java] 스킬트리  (0) 2022.04.01
'프로그래머스/Level 2' 카테고리의 다른 글
  • [프로그래머스][Level2][Java] 튜플
  • [프로그래머스][Level2][Java] 짝지어 제거하기
  • [프로그래머스][Level2][Java] 영어 끝말잇기
  • [프로그래머스][Level2][Java] n^2배열 자르기
BvrPark
BvrPark
코드 퍼즐과 개발 일상
  • BvrPark
    비버의 개발 일지
    BvrPark
  • 전체
    오늘
    어제
    • 분류 전체보기 (121)
      • JAVA (7)
        • 메서드 외울 것 (2)
      • 프로그래머스 (56)
        • 총 풀이 코드(깃허브) (1)
        • Level 1 (22)
        • Level 2 (33)
      • 백준 알고리즘(단계 별) (16)
        • 총 풀이 코드(깃허브) (1)
        • 1. 입출력과 사칙연산 (2)
        • 2. if 문 (2)
        • 3. for문 (1)
        • 4. while문 (2)
        • 5. 1차원 배열 (3)
        • 6. 함수 (1)
        • 7. 문자열 (1)
        • 8. 기본수학 1 (3)
      • 백준 알고리즘(solved.ac) (9)
        • 총 풀이 코드(깃허브) (1)
        • class2 (8)
      • LeetCode 문제 풀이 (4)
        • 총 풀이 코드(깃허브) (1)
        • Easy (3)
      • 코드업 알고리즘 (7)
      • git과 github사용법 (4)
      • html, css, javaScript (2)
      • 프로젝트 (11)
        • 순수 Java 프로젝트 (2)
        • 쇼핑몰 프로젝트 (2)
        • 게시판 프로젝트 (5)
        • 근태관리 프로젝트 (2)
      • 커피타임 (2)
        • 2023년 (2)
        • 2024년 (0)
  • 블로그 메뉴

    • 링크

      • 포트폴리오
      • 깃허브
    • 공지사항

    • 인기 글

    • 태그

    • 최근 댓글

    • 최근 글

    • Designed By정상우
    BvrPark
    [프로그래머스][Level2][Java] 점프와 순간이동
    상단으로

    티스토리툴바