[프로그래머스 LV2] 예상 대진표

Junyoung Park·2021년 12월 24일
0

코딩테스트

목록 보기
17/631

1. 문제 설명

예상 대진표

2. 문제 분석

A가 B보다 작을 때, A와 B가 각각 홀수, 짝수이고 1씩 떨어져 있으면 서로 대진한다는 뜻이다. 다른 조건은 사전에 염두에 두고 있었는데, 홀수, 짝수 조건을 생각지 못해 특정 케이스에서 실패하고 말았다. 코딩 테스트를 할 때 테스트 케이스를 내 나름대로 주고 해야 괜찮을 것 같다.

3. 나의 풀이

    total = 0
    if a > b: a, b = b, a
    while(True):
        
        if abs(b-a) == 1 and (a%2 == 1 and b%2 == 0): break

        if a % 2== 0: a = a//2
        else: a = (a//2)+1
        if b % 2==0: b = b//2
        else: b = (b//2)+1
        total +=1
    return total + 1
profile
JUST DO IT

0개의 댓글