Implementation 2

[문제 풀이] Hacker Rank - Organizing Containers of Balls

HackerRank link Organizing Containers of Balls 풀이 핵심 각 타입의 총 수와 각 컨테이너가 갖고 있는 ball의 총 수가 일치 해야 함. ex) type 0번의 총 갯수가 1, container 0의 총 갯수는 2 type 1번의 총 갯수가 3, container 1의 총 갯수는 2 container의 0에 type 0을 다 swap해서 넣는다고 할때, type 0은 1개만 있어서 container 0에서 총 담아야 하는 갯수는 1개이다. 하지만, container 0은 총 2개를 담고 있으므로, 절대 type 0만 담을 수 없다. Algorithm type 별 총 갯수를 구한다. (각 행의 합) container가 갖고 있는 수를 구한다. (각 열의 합) 한쪽으로 ..

[문제 풀이] Hacker Rank - Forming a Magic Square

HackerRank link Forming a Magic Square 풀이 핵심 경우에 따라선 복잡한 알고리즘으로 구하는 것보다 모든 경우를 직접 구해서 비교하는 방법이 더 빠르다. 3x3 마방진의 경우 모든 경우의 수는 9가지가 된다. (기본 형태 + 좌/우/상/하 대칭 + 90도씩 회전 = 9가지) Algorithm 9가지의 마방진을 미리 입력해 둔다. 입력으로 들어온 3x3행렬을 미리 입력 된 마방진을 통하여 cost의 최솟값을 구한다. Source Code import java.io.*; import java.math.*; import java.security.*; import java.text.*; import java.util.*; import java.util.concurrent.*; imp..