삐까냥의 파도타기

2875번) 대회 or 인턴 - 그리디 본문

코딩/백준 알고리즘

2875번) 대회 or 인턴 - 그리디

금손형아 2017. 10. 27. 12:29


문제 출처 : https://www.acmicpc.net/problem/2875


import java.util.Scanner;


public class Q2875 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int[] member = new int[3]; //0.여자, 1.남자, 2.인턴

for ( int i = 0; i <3; i++ ) {

member[i] = sc.nextInt();

}

int team = 0;

while ( member[0] > 1 && member[1] > 0 ) {

member[0] -= 2; //여자 두명과 남자 한명을 팀으로 바꾼다.

member[1] -= 1;

team++;

}

member[2] -= member[0] + member[1]; //나머지 인원들을 인턴으로 보낸다.

if ( member[2] > 0 ) { //인턴 할당량이 남아있으면 팀을 쪼개서 인턴으로 보낸다.

team -= member[2] / 3; //3명이 한팀이니, 3으로 나눈다.

if ( member[2] % 3 != 0 ) { //추가로 1 or 2명 남아있으면 한팀이 완성 못되니 한팀을 뺀다.

team -= 1;

}

}

System.out.println(team);

}

} 




'코딩 > 백준 알고리즘' 카테고리의 다른 글

1700번) 멀티탭 스케줄링 - 그리디  (0) 2017.10.27
1049번) 기타줄 - 그리디  (0) 2017.10.27
10610번) 30 - 그리디  (0) 2017.10.27
2217번) 로프 - 그리디  (0) 2017.10.26
11399번) ATM - 그리디  (0) 2017.10.26