Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- python
- 완전탐색
- 어려웠던 문제
- fragment identifier
- 프로그래머스
- 후위 표기법
- 보이어무어
- 튜플
- Dynamic Programming
- 메뉴리뉴얼
- 순열
- 에라토스테네스의 체
- 조합
- 반복문
- 영문자 확인
- 점프와 순간이동
- pandas
- Stack
- HashMap
- Java
- dfs
- 최소공배수
- 규칙찾기
- 알고리즘
- 문자열
- 쿼드압축 후 개수세기
- 2017 카카오 코드
- 완전 탐색
- 동적계획법
- HashSet
Archives
- Today
- Total
csmoon1010의 SW 블로그
[201125] 예상 대진표 - 2017 팁스타운(level2) 본문
0. 문제 유형 : 규칙찾기
1. 문제 이해
programmers.co.kr/learn/courses/30/lessons/12985
코딩테스트 연습 - 예상 대진표
△△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N
programmers.co.kr
(1) 주요 요구사항
- 게임의 진행방식 : 1~N번까지 토너먼트로 진행, 한 라운드를 진출하면 다시 1~N/2로 번호 재배정
- 주어진 A번과 B번 참가자가 몇 번째 라운드에서 만나는지 return (서로 붙게 되기 전까지는 항상 이긴다고 가정)
(2) 제한사항
- N : 2^1 ~ 2^20의 자연수 → 부전승 발생X
- A, B : N이하의 자연수이며 둘은 같지 않음
2. 전략
(1) 번호 배정 규칙
- 번호가 짝수든, 홀수든 라운드를 진출해 번호를 받으면 " (x+1) / 2"의 값을 가진다!!
(2) 경쟁 대상
- k, k+1이 한 쌍이 되며, 이 때 k는 홀수이다.
- k와 k+1 둘 다 진출할 수 없으므로 둘이 붙으면 번호 배정 규칙에 따라 같은 수를 부여 받는다 ▶ 종료 조건으로 사용
3. 참고사항
X
4. 코드
class Solution
{
public int solution(int n, int a, int b)
{
int answer = 0;
while(a != b){
a = (a+1)/2;
b = (b+1)/2;
answer++;
}
return answer;
}
}
'Coding Test > 프로그래머스' 카테고리의 다른 글
[201216] 뉴스 클러스터링 - 2018 KAKAO BLIND RECRUITMENT (0) | 2020.12.16 |
---|---|
[201125] 영어 끝말잇기 - Summer/Winter Coding(~2018) (level2) (0) | 2020.11.25 |
[201117] 점프와 순간 이동 - Summer/Winter Coding(~2018) (level2) (0) | 2020.11.17 |
[201113] 후보키 - 2019 KAKAO BLIND RECRUITMENT(level2) ★ 비트마스크 ★ (0) | 2020.11.13 |
[201111] 오픈채팅방 - 2019 KAKAO BLIND RECRUITMENT(level2) (0) | 2020.11.11 |
Comments