본문 바로가기

백준/[삼성 기출]14

[12100번] 2048(Easy) 12100번: 2048 (Easy) www.acmicpc.net 2048에서 여러 조건이 빠진 문제이다.위 아래 왼쪽 오른쪽으로 이동시킬 수 있고 이동시 같은 숫자의 블록을 만나면 서로 합쳐진다.블록이 합쳐지는 우선순위는 이동 방향쪽이 우선이다. 주의해야 할 조건은 1. 한 번의 이동에서 이미 합쳐진 블록은 다른 블록과 다시 합쳐질 수 없다.ex) 에서 위로 이동할 경우가 아니라 가 되어야 한다. 2. 최대 5번의 이동이 가능하다. 맵의 크기가 20 * 20으로 완전탐색으로 풀 수 있다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656.. 2020. 4. 21.
[17136번] 색종이 붙이기 17136번: 색종이 붙이기 www.acmicpc.net 1*1, 2*2, 3*3, 4*4, 5*5 크기의 색종이가 각각 5장 씩 주어진다. 이 색종이들 만 이용해서 주어진 공간에 완벽하게 붙이면 된다. 조건1. 색종이를 붙일 때는 종이의 경계 밖으로 나가서는 안된다.2. 겹쳐도 안 된다.3. 칸의 경계와 일치하게 붙여야 한다. 즉, 0이 적힌 칸에는 색종이가 있으면 안 된다. 맵의 크기가 10*10으로 작기 때문에 완전탐색으로 해결할 수 있다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777.. 2020. 4. 11.
[17406번] 배열 돌리기4 17406번: 배열 돌리기 4 www.acmicpc.net 크기가 N×M 크기인 배열 A가 있을때, 배열 A의 값은 각 행에 있는 모든 수의 합 중 최솟값을 의미한다. 회전연산 이란, 아래 그림 처럼 배열을 회전시키는 연산이다. 주어진 회전 연산의 정보에 따라 회전한 배열 A의 값중 최소값을 출력하는 문제다. 구현력을 보는 문제인듯 하다. 1. 회전 연산의 순서를 정하고 (순열)2. 정해진 순서에 맞춰 회전 연산을 수행 (회전)3. 연산이 끝난 배열의 값을 구해서 최소값을 구한다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676.. 2020. 4. 11.
[17471번] 게리맨더링 17471번: 게리맨더링 www.acmicpc.net 1. 각 지역들이 어느 선거구에 포함될지 정한다. (조합) 2. 나눠진 선거구안의 지역들을 bfs하면서 서로 이어져 있으면 union find를 이용해 묶어준다.3. 각 선거구 지역들이 다 이어졌으면 두 선거구의 인구차를 구해서 최솟값 갱신을 한다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112.. 2020. 4. 11.