삼성11 삼성 코딩테스트 기출_(백준)아기상어 난이도 ★★★★☆ 문제출처 acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가지고 있고, 이 크기는 자연수이다. 가장 처음에 아기 상어의 크기는 2이고, 아기 상어는 1초에 상하좌우로 인접한 한 칸씩 이동한다. 아기 상어는 자신의 크기보다 큰 물고기가 있는 칸은 지나갈 수 없고, 나머지 칸은 모두 지나갈 수 있다. 아기 상어는 자신의 크 www.acmicpc.net 포인트 1. bfs(최단거리 탐색) 상어는 먹을 수 있는 물고기 중, 가장 '가까이에 있는' 물고기를 먹어야 하므로, 구현을 .. 2019. 10. 18. 삼성 코딩테스트 기출_(백준)인구이동 난이도 ★★☆ 문제출처 https://www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모든 나라는 1×1 크기이기 때문에, 모든 국경선은 정사각형 형태이다. 오늘부터 인구 이동이 시작되는 날이다. 인구 이동은 다음과 같이 진행되고, 더 이상 아래 방법에 의해 인구 이동이 없을 때까지 지속된다. 국경선을 공유하는 두 나라의 인구 차이가 L명 www.acmicpc.net 포인트 1. dfs 1-1. 연합할 수 있는 국가를 dfs로 넓혀나간다. 일반 dfs 알고리즘이 visit여부.. 2019. 10. 17. 삼성 코딩테스트 기출_(백준)2048(Easy) 난이도 ★★☆ 문제출처 https://www.acmicpc.net/problem/12100 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2보다 크거나 같고, 1024보다 작거나 같은 2의 제곱꼴이다. 블록은 적어도 하나 주어진다. www.acmicpc.net 포인트(짜면서 내가 실수했던 부분들 위주로) 1. '최대 5번' 나는 5번 모두 움직인 후 max값을 구했다. 그런데 문제 조건은 5번 움직인 후에 최댓값을 구하는 것이 아니라 최대 5번까지 돌리고 그 전에라도 최댓값을 찾기만 하면 되는 것이었다. 2. 재.. 2019. 10. 15. 삼성 코딩테스트 기출_(백준)테트로미노 난이도 ★★☆ 문제출처 https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변끼리 연결되어 있어야 한다. 즉, 꼭짓점과 꼭짓점만 맞닿아 있으면 안 된다. 정사각형 4개를 이어 붙인 폴리오미노는 테트로미노라고 하며, 다음과 같은 5가지가 있다. 아름이는 크기가 N×M인 종이 위에 테트로미노 하나를 놓으려고 한다. 종이는 1×1 크기의 칸으로 나누 www.acmicpc.net 포인트 1. dfs 1-1. 테트로미노는 칸의 개수가 네 개로 제한된 dfs로 구현한다. dfs가 진행될 때.. 2019. 10. 4. 이전 1 2 3 다음