본문 바로가기

백준 알고리즘21

백준 21609 상어 중학교 - 삼성 SW 역량 테스트 기출 백준 21609 상어 중학교 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/21609 21609번: 상어 중학교 상어 중학교의 코딩 동아리에서 게임을 만들었다. 이 게임은 크기가 N×N인 격자에서 진행되고, 초기에 격자의 모든 칸에는 블록이 하나씩 들어있고, 블록은 검은색 블록, 무지개 블록, 일반 블록 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 기준 블록의 조건이 매우 많다. . 블록 그룹 중 무지개 블록이 아닌 블록 중 . 행의 번호가 가장 작고 . 열의 번호가 가장 작은 블록 2. 블록 그룹을 찾는 조건이 매우 많다. . 그룹의 크기는 2 이상이어야한다. . 크기가 가장 큰 블록 그룹을 찾는다. . 그 중 무지개 블록.. 2021. 9. 22.
백준 21608 상어 초등학교 - 삼성 SW 역량 테스트 기출 백준 21608 상어 초등학교 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/21608 21608번: 상어 초등학교 상어 초등학교에는 교실이 하나 있고, 교실은 N×N 크기의 격자로 나타낼 수 있다. 학교에 다니는 학생의 수는 N2명이다. 오늘은 모든 학생의 자리를 정하는 날이다. 학생은 1번부터 N2번까지 번호 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 학생들을 배치하고나서, 인접한 학생들 중 선호하는 학생이 얼마나 있는지에 따라 만족도에 대한 점수를 매긴다. 2. 만족도에 대한 점수를 매길 때, 어떤 학생의 선호학생 리스트를 사용해야한다. 3. 따라서, Student 클래스의 리스트를 만들어 각 객체마다 번호와 선호학생.. 2021. 9. 22.
백준 20058 마법사 상어와 파이어스톰 - 삼성 SW 역량 테스트 기출 백준 20058 마법사 상어와 파이어스톰 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/20058 20058번: 마법사 상어와 파이어스톰 마법사 상어는 파이어볼과 토네이도를 조합해 파이어스톰을 시전할 수 있다. 오늘은 파이어스톰을 크기가 2N × 2N인 격자로 나누어진 얼음판에서 연습하려고 한다. 위치 (r, c)는 격자의 r행 c www.acmicpc.net 2. 문제 해결에 대한 아이디어 격자에 대한 반시계 방향 회전이 가장 어려웠다. 격자를 부분 격자로 나누어 각 부분 격자를 반시계 방향으로 돌리는 것이기 때문에 위치 보정이 힘들었다. 차라리 각 부분 격자를 돌리고나서 그 값을 격자에 넣는 것이 더 쉬울 것이다.(이렇게 안 함) 위치에 대한.. 2021. 9. 21.
백준 21610 마법사 상어와 비바라기 - 삼성 SW 역량 테스트 기출 백준 21610 마법사 상어와 비바라기 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/21610 21610번: 마법사 상어와 비바라기 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그 마법을 할 수 있다. 오늘 새로 배운 마법은 비바라기이다. 비바라기를 시전하면 하늘에 비구름을 만들 수 있다. 오늘은 비바라기 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 구름을 담는 리스트를 만들어 구름의 위치를 계속 확인했다. 2. input은 (1, 1)에서 시작하여 (N, N)으로 끝나는 2차원 배열이기 때문에 위치 보정이 필요하다.(선택 사항) 3. 격자는 0행과 N행 0열과 N열이 연결되어 있다. 따라서 좌표상 범위를 벗어나.. 2021. 9. 21.
백준 21611 마법사 상어와 블리자드 - 삼성 SW 역량 테스트 기출 백준 21611 마법사 상어와 블리자드 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/21611 21611번: 마법사 상어와 블리자드 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그, 비바라기 마법을 할 수 있다. 오늘 새로 배운 마법은 블리자드이고, 크기가 N×N인 격자에서 연습하려고 한다. N은 항상 홀수이고, ( www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 2차원 배열에서 달팽이처럼 빙글빙글 돈다. 2. 아래의 순서대로 반복한다. 마법 사용 2차원 배열 -> 1차원 배열 반복{ 구슬 이동 구슬 폭발 (폭발 없으면 반복 멈춤) } 구슬 변화 1차원 배열 -> 2차원 배열 3. 2차원 배열을 순회할 때, 달팽이처.. 2021. 9. 21.
백준 20057 마법사 상어와 토네이도 - 삼성 SW 역량 테스트 기출 백준 20057 마법사 상어와 토네이도 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/20057 20057번: 마법사 상어와 토네이도 마법사 상어가 토네이도를 배웠고, 오늘은 토네이도를 크기가 N×N인 격자로 나누어진 모래밭에서 연습하려고 한다. 위치 (r, c)는 격자의 r행 c열을 의미하고, A[r][c]는 (r, c)에 있는 모래의 양을 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 토네이도는 서 남 동 북 순으로 이동하며 각 방향으로 2턴 마다 이동거리가 길어진다. (1 1 2 2 3 3 4 4 ...) 2. 이동 방향에 따라 모래를 날리는 케이스가 4가지가 존재하므로 각각 구현했다. . Pair 클래스를 만들어 각 방.. 2021. 9. 20.