전체 방문자
오늘
어제
모달조아
Better than yesterday
모달조아
  • 분류 전체보기 (147)
    • PS (86)
      • BOJ (79)
      • 프로그래머스 (6)
    • 이론 (41)
      • 자료구조 (2)
      • 알고리즘 (8)
      • 데이터베이스 (1)
      • 운영체제 (1)
      • 네트워크 (3)
      • 디자인패턴 (7)
      • Java (13)
      • Spring (4)
      • JPA (1)
      • Git (1)
    • 개발 (18)
    • 프로젝트 (1)
    • 기록 (0)
      • 후기 (0)
    • etc (1)

최근 글

티스토리

hELLO · Designed By 정상우.
모달조아
PS/프로그래머스

프로그래머스 Lv.2 예상 대진표 [Java]

PS/프로그래머스

프로그래머스 Lv.2 예상 대진표 [Java]

2022. 9. 13. 16:12

1. 문제 링크

https://school.programmers.co.kr/learn/courses/30/lessons/12985

2. 문제 해설

간단한 문제였다. a 와 b를 2로 나눠주면서 나눠준 횟수를 구하면 된다.(짝수이냐 홀수이냐는 구분해줘야한다.)
단, 언제까지 나눠줄 것인지 조건을 설정하는 것이 문제의 핵심이다.

조건 1. a 와 b의 차이가 1이어야 함.
조건 2. a 와 b 중 작은 수가 홀수여야함. 예를 들어 a = 4이고 b =5 이면, 차이가 1이지만 한 라운드를 더 치뤄야한다.

위 조건을 동시에 만족할 때까지 a와 b를 나누어주면 된다.

3. 코드 보기

class Solution
{
public int solution(int n, int a, int b) {
int answer = 1;
while (true) {
if (Math.abs(a - b) == 1 && Math.min(a, b) % 2 == 1) {
break;
}
if (a % 2 == 0) {
a /= 2;
} else {
a = a / 2 + 1;
}
if (b % 2 == 0) {
b /= 2;
} else {
b = b / 2 + 1;
}
answer++;
}
return answer;
}
}
저작자표시 (새창열림)

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

프로그래머스 Lv.3 순위 [Java]  (0) 2022.09.05
프로그래머스 Lv.2 게임 맵 최단거리 [Java]  (0) 2022.09.02
2021 카카오 채용연계형 인턴십 Lv3 표 편집 [Java]  (0) 2021.12.04
2021 카카오 채용연계형 인턴십 Lv2 거리두기 확인하기 [Java]  (0) 2021.12.02
2021 카카오 채용연계형 인턴십 Lv1 숫자 문자열과 영단어 [Java]  (0) 2021.11.25
  • 1. 문제 링크
  • 2. 문제 해설
  • 3. 코드 보기
'PS/프로그래머스' 카테고리의 다른 글
  • 프로그래머스 Lv.3 순위 [Java]
  • 프로그래머스 Lv.2 게임 맵 최단거리 [Java]
  • 2021 카카오 채용연계형 인턴십 Lv3 표 편집 [Java]
  • 2021 카카오 채용연계형 인턴십 Lv2 거리두기 확인하기 [Java]
모달조아
모달조아

티스토리툴바

단축키

내 블로그

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

블로그 게시글

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

모든 영역

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

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