관리 메뉴

NineTwo meet you

[백준/자바] 2875 대회 or 인턴 본문

프로그래밍 문제/백준

[백준/자바] 2875 대회 or 인턴

NineTwo 2020. 12. 24. 17:42
반응형

출처


설명

n => 여학생 수

m => 남학생 수

k => 인턴쉽 참여해야 하는 수

 

반복문을 이용해 k 학생 중 여학생의 수를 i, 남학생의 수를 k-i로 해 각각 원래 학생 수에서 빼준 뒤 계산했다.

인턴쉽을 참여하지 않은 여학생 수 = n - i

인턴쉽을 참여하지 않은 남학생 수 = m - (k - i) = m - k + i

 

이때 팀( 2명의 여학생과 1명의 남학생 )의 최대 수를 구하기 위해서는 두 가지의 기준이 필요하다.

1. 남은 남학생의 수의 두 배보다 여학생이 많거나 같다면 남학생의 수만큼 팀을 만들 수 있다. 

ex) 5 1 1 => 답 1

2. 남은 여학생 수의 절반보다 남학생 수가 많거나 같다면 여학생의 수 절반만큼 팀을 만들 수 있다.

ex) 2 2 0 => 답 : 1

 

두 가지 경우 비슷한 말 같지만, 전혀 다른 이유는 1번의 경우 남학생이 모두 팀에 들어가지만

2번의 경우 팀이 되지 않는 남학생이 발생할 수도 있다는 차이가 있다.

 

코드

반응형
Comments