키위쥬스

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

 타로는 0 부터 N-1 이라 이름을 붙인 N개의 병에 키위 주스를 넣었습니다. 이때 i번째의 용량은 capacities[i] 리터이며 타로가 i 번째 병에 넣은 키위 주 스의 주스의 양을 bottle[i] 리터라고 합니다.

 타로는 병에 키위 주스를 재분배하려고 하며, 0부터 M-1까지 M회 조작합니다. i번째의 조작은 타로가 병 fromId[i]부터 병 toId[i]에 키위 주스를 넣는 것을 의미합니다. 병 fromId[i]가 비어 있거나 병 toId[i]가 꽉 차 있는 순간, 타로는 더 이상 키위 주스를 넣지 않습니다.


 N개의 요소를 가진 정수 배열 int[] 를 리턴해 주세요. 배열의 i 번째 요소는 모든 주스를 쏟는 작입이 완료되고  i번째 병에 남아 있는 키위 주스의 양입니다.


[정의 : 클래스와 함수 정의]


Class : KiwiJuiceEasy

Java : public int[] thePouring(int[] capacities, int[] bottles, int[] fromId, int[] toId)


[제약조건 : 매개변수 범위]

capacities -> 2~50개의 요소가 있는 배열입니다. 각 요소는 1~1000000 사이의 값을 갖습니다.

bottles     -> capacities와 같은 수의 요소가 있는 배열입니다. bottles[i]는 capacities[i]에 들어 있는 주스를 의미합니다.

fromId     -> 1~50개의 요소가 있는 배열입니다.

toId         -> fromId와 같은 수의 요소가 있는 배열입니다.


변수 fromId와 toId는 0~(N-1) 사이의 값입니다. 이때 N은 변수 capacities의 항목 개수입니다. 변수 fromId[i]와 toId[i]는 서로 다른 값을 갖습니다.


[예시 : 입력 데이터와 출력 데이터]

1. capacities = {20, 20}

bottles = {5,8}

fromId = {0}

toId = {1}

Returns :{0, 13}

2. capacities = {10, 10}

bottles = {5,8}

fromId = {0}

toId = {1}

Returns : {3,10}

3. capacities = {30, 20,10}

bottles = {10, 5,5}

fromId= {0,1,2}

toId = {1,2,0}

Returns : {10,10,0}

4. capacities = {14,35,86,58,25,62}

bottles = {6, 34, 27, 38, 9, 60}

fromId = {1,2,4,5,3,3,1,0}

toId ={0,1,2,4,2,5,3,1}

Returns : {0,14,65,35,25,35}


스칼라 언어로 프로그램 하시오

'Quiz > Question' 카테고리의 다른 글

[Q3] 암호  (0) 2017.12.19
[Q2] 즐거운 파티  (0) 2017.12.12

+ Recent posts