컴퓨터 과학/💯 코테

코딩 테스트 합격자 되기 | 문제26. 예상 대진표

2024. 12. 4. 08:46
목차
  1. 26. 예상 대진표

26. 예상 대진표

https://school.programmers.co.kr/learn/courses/30/lessons/12985?language=java

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N번의 참가자끼리 게임을 진행합니다. 각 게임에서 이긴 사람은 다음 라운드에 진출할 수 있습니다. 이때, 다음 라운드에 진출할 참가자의 번호는 다시 1번부터 N/2번을 차례대로 배정받습니다. 만약 1번↔2번 끼리 겨루는 게임에서 2번이 승리했다면 다음 라운드에서 1번을 부여받고, 3번↔4번에서 겨루는 게임에서 3번이 승리했다면 다음 라운드에서 2번을 부여받게 됩니다. 게임은 최종 한 명이 남을 때까지 진행됩니다.

이때, 처음 라운드에서 A번을 가진 참가자는 경쟁자로 생각하는 B번 참가자와 몇 번째 라운드에서 만나는지 궁금해졌습니다. 게임 참가자 수 N, 참가자 번호 A, 경쟁자 번호 B가 함수 solution의 매개변수로 주어질 때, 처음 라운드에서 A번을 가진 참가자는 경쟁자로 생각하는 B번 참가자와 몇 번째 라운드에서 만나는지 return 하는 solution 함수를 완성해 주세요. 단, A번 참가자와 B번 참가자는 서로 붙게 되기 전까지 항상 이긴다고 가정합니다.

 

제한사항

  • N : 21 이상 220 이하인 자연수 (2의 지수 승으로 주어지므로 부전승은 발생하지 않습니다.)
  • A, B : N 이하인 자연수 (단, A ≠ B 입니다.)

입출력의 예

N A B answer
8 4 7 3

 

내 답안

class Solution
{
    public int solution(int n, int a, int b)
    {
        int answer = cnt(a,b,0);
        return answer;
    }
     public int cnt(int a, int b, int idx){
        if(a == b){
            return idx;
        }

        if(a%2==0){
            a = a/2;
        }else{
            a = (a+1)/2;
        }
        if(b%2==0){
            b = b / 2;
        }else{
            b = (b+1)/2;
        }
        return cnt(a,b,idx+1);
    
    }
}
반응형

'컴퓨터 과학 > 💯 코테' 카테고리의 다른 글

코딩 테스트 합격자 되기 | 문제28. 양과 늑대  (0) 2024.12.12
코딩 테스트 합격자 되기 | 문제27. 다단계 칫솔 판매  (0) 2024.12.06
코딩 테스트 합격자 되기 | 문제25. 트리 순회  (0) 2024.12.01
코딩 테스트 합격자 되기 | 문제25. 트리 순회  (0) 2024.11.27
코딩 테스트 합격자 되기 | 문제24. 메뉴 리뉴얼  (0) 2024.11.22
  1. 26. 예상 대진표
'컴퓨터 과학/💯 코테' 카테고리의 다른 글
  • 코딩 테스트 합격자 되기 | 문제28. 양과 늑대
  • 코딩 테스트 합격자 되기 | 문제27. 다단계 칫솔 판매
  • 코딩 테스트 합격자 되기 | 문제25. 트리 순회
  • 코딩 테스트 합격자 되기 | 문제25. 트리 순회
이재원
이재원
이재원
깃든블로그
이재원
유튜브
깃허브
전체
오늘
어제
글쓰기 관리
  • 분류 전체보기 (452)
    • WORK (11)
      • ✍🏻 기록 (8)
      • PLC (1)
    • DevOps (30)
      • 🛠️ CICD (9)
      • 🐳 Docker & Kubernetes (12)
      • 📡 AWS (3)
      • 🌌 Git (6)
    • 웹 개발 (197)
      • 🖥️ HTML&CSS (11)
      • 🌐 JavaScript (39)
      • 🍃 SpringBoot (51)
      • 🎆 JSP (15)
      • 🐍 Python (16)
      • ⚛️ React (15)
      • #️⃣ TypeScript (15)
      • 🧊 ThreeJS (13)
      • 🟩 Node.js (16)
      • 🚨 Error Log (6)
    • 서버&백엔드 (100)
      • 🔥 JAVA (51)
      • 🗃️ DataBase (21)
      • 🐧 Linux (21)
      • 🖥️ Windows (7)
    • AI (6)
      • 🤖 딥러닝 (6)
    • 앱 개발 (1)
      • 📱 Flutter (1)
      • ReactNative (0)
    • 컴퓨터 과학 (71)
      • 🀰 디자인패턴 (10)
      • 🔢 자료구조 (11)
      • 🛜 네트워크 (12)
      • 🖥️ 운영체제 (1)
      • 🔆 프로그래밍 (5)
      • 💯 코테 (32)
    • 개인프로젝트 (4)
      • 🤪 forfun (2)
      • 💼 포트폴리오 (1)
      • 🍎 MacBook (1)
    • 자격증 (1)
      • 💯 OPIC (0)
      • 자격증 (1)
    • 꿀팁 (9)
      • ✨ 유용한 사이트 (8)
      • 📙 티스토리 (1)
    • 여행 (1)
      • ✈️ 해외여행 (1)
      • 🗺️ 국내여행 (0)
    • 음식 (6)
      • 🏰 맛집 (5)
      • 🍰 요리 (1)
    • 일상 (4)
      • 🎨 만들기 (1)
      • 🛒 쇼핑 (2)
      • 👟 운동 (1)
    • 유튜브 (7)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 이천
  • springboot
  • 청담메종
  • 까르띠에
  • 코딩테스트
  • 안국역
  • 키오스크 공익
  • 키오스크공익
  • 존맛
  • nestjs
  • 역삼
  • 인사동
  • 오블완
  • thymleaf
  • 사케
  • 식권관리
  • java
  • 한식
  • 이자카야
  • 양평역
  • 키오스크
  • 스프링부트
  • 티스토리챌린지
  • JPA
  • 가성비
  • 맛집
  • 코테
  • 러닝
  • 영등포구청
  • 한강
반응형
이재원
코딩 테스트 합격자 되기 | 문제26. 예상 대진표
상단으로

티스토리툴바

단축키

내 블로그

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

블로그 게시글

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

모든 영역

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

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