삼성코테자바풀이

    BOJ - 인구 이동 16234번 (JAVA)

    ❓ 문제 - 백준 인구 이동 16234번 - JAVA 풀이법 출처 (https://www.acmicpc.net/problem/16234) 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net 📝 문제해결법 1. 이 문제의 핵심은 그래프탐색(BFS)로 해결하는 것이다. 두 개의 큐를 이용해 전체 나라를 탐색을 위한 queue와 국경선을 공유한 것의 지역을 담을 queue2를 통해 해결 한 지역에 대해 국경선 공유할 때 연합인구수와 연합을 이루고 있는 국가 수를 저장하기 위해 cnt변수 이용 queue에 ..

    BOJ - 뱀 3190번 (JAVA)

    ❓ 문제 - 백준 뱀 3190번 - JAVA 풀이법 출처 (https://www.acmicpc.net/problem/3190) 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 📝 문제해결법 1. 이 문제는 Queue + 구현 + 해시맵으로 풀었다. map이라는 2차원 배열로 처음 입력받은 사과의 정보를 1로 넣는다. 방향 전환에 대한 정보를 해쉬맵에 key값을 time, value L or D로 넣어 뱀을 움직이면서 현재 시간에 해당하는 key 값이 존재하면 해당 방향으로 방향전환 하도록 구현하였다. 뱀에 대한 정보..

    BOJ - 구슬 탈출 2 13460번 (python/JAVA)

    ❓ 문제 - 백준 구슬 탈출 2 13460번 - python 풀이법 출처 (https://www.acmicpc.net/problem/13460) 13460번: 구슬 탈출 2 첫 번째 줄에는 보드의 세로, 가로 크기를 의미하는 두 정수 N, M (3 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄에 보드의 모양을 나타내는 길이 M의 문자열이 주어진다. 이 문자열은 '.', '#', 'O', 'R', 'B' www.acmicpc.net 📝 문제해결법 1. 이 문제는 그래프탐색(BFS) + 구현으로 풀었다. bfs를 통해 4방향으로 기울리면서 구슬을 움직이는데, 기울린 횟수(depth)가 10회가 넘는다면 실패이므로 break를 통해 -1를 리턴한다. 4방향으로 기울리는 것은 move 함수를 통해 기울림을..