Jeongchul Kim
백준 삼성 코딩 기출 문제 - 스타트와 링크 python 본문
백준 삼성 코딩 기출 문제 - 스타트와 링크 python
출처 : BAEKJOON ONLINE JUDGE
스타트와 링크 (https://www.acmicpc.net/problem/14889)
문제 설명
축구를 하기 위해 짝수인 N명이 모여 N/2명으로 팀을 구성하려고 합니다. 이 문제는 2개의 팀(스타트, 링크팀)의 능력치 차이의 최소값을 출력하는 문제입니다. 능력치를 계산하는 방법은 팀원들끼리 주어진 배열에서 row 인덱스인 i와 column 인덱스의 j를 서로 맞바꿔 값을 더합니다.
문제 풀이
재귀 함수로 구현합니다
[1] 입력을 받습니다.
[2] 스타트 팀과 링크팀을 구분하기 위해 myteam이라는 배열을 사용합니다. 능력치 차이 값은 answer로 초기화합니다. True -> 스타트팀, False -> 링크팀으로 정의합니다.
[3] 재귀 함수로 구현합니다.
- 전체 N명에 대해서 확인이 끝났다면 종료 합니다.
- 팀원이 N/2명으로 떨어진다면 각 스타트팀과 링크팀의 능력치를 계산합니다.
- 능력치를 계산할 때는 스타트팀은 True, 링크팀은 False로 조건에서 확인하고 각 팀에 능력치를 합산합니다.
- 두 팀의 능력치 차이가 최소가 되도록, 빼버린 값에 abs 절대값을 넣고 최소를 비교하여 저장합니다.
- 재귀 함수는 스타트팀인 경우와 링크팀에 대해서 호출합니다.
[4] 최종적으로 호출하고 결과를 출력합니다.
전체 코드
'Algorithm' 카테고리의 다른 글
프로그래머스 2019년 카카오 겨울 인턴쉽 튜플 python (0) | 2020.06.01 |
---|---|
프로그래머스 2019년 카카오 겨울 인턴쉽 크레인 인형뽑기 게임 python (0) | 2020.06.01 |
백준 삼성 코딩 기출 문제 - 연산자 끼워넣기 python (0) | 2019.10.19 |
백준 삼성 코딩 기출 문제 - 로봇청소기 python (2) | 2019.10.19 |
백준 삼성 코딩 기출 문제 - 연구소 python (0) | 2019.10.19 |
Comments