알고리즘 문제 풀이: 파이썬/BOJ

[BOJ_1057] 토너먼트

hueco 2022. 8. 31.

 

📌 문제 링크: https://www.acmicpc.net/problem/1057

 

1057번: 토너먼트

김지민은 N명이 참가하는 스타 토너먼트에 진출했다. 토너먼트는 다음과 같이 진행된다. 일단 N명의 참가자는 번호가 1번부터 N번까지 배정받는다. 그러고 난 후에 서로 인접한 번호끼리 스타를

www.acmicpc.net

 

내 풀이(Success) :

 

🚩 Idea:

 - 배열에서 원소를 2개씩 구간을 나눠 뽑고, 뽑은 원소 중에서 a와 b가 있는지 확인한다.

 - a와 b가 둘 다 없다면, 원소중에 하나를 임시 배열(tmp)에 넣는다.

 - a와 b가 둘 다 있다면, 현재 라운드의 수(game)를 출력하고, 프로그램을 종료시킨다.

 - a만 있다면, tmp에 a를 추가한다.

 - b만 있다면, tmp에 b를 추가한다.

 - for반복문이 종료되고, 배열 arr의 길이가 홀수라면, arr배열의 마지막 원소를 tmp에 추가한다.

 - 한 라운드가 종료됐으므로, 라운드의 수를 1 증가시키기고, 기존 배열 arr을 비우고, tmp 배열의 원소들을 arr에 담는다.

 - a와 b가 나올 때까지 위 과정을 반복한다.

 

 

 
 
 

'알고리즘 문제 풀이: 파이썬 > BOJ' 카테고리의 다른 글

[BOJ_1654] 랜선 자르기  (0) 2022.09.04
[BOJ_17298] 오큰수  (0) 2022.09.01
[BOJ_1049] 기타줄  (0) 2022.08.30
[BOJ_1755] 숫자놀이  (0) 2022.08.29
[BOJ_10546] 배부른 마라토너  (0) 2022.08.28

댓글