본문 바로가기

BFS

SWEA [모의 SW 역량테스트] 등산로 조성 package swea; import java.util.*; import java.io.*; public class 등산로조성 { public static class MyScanner { BufferedReader bf; StringTokenizer st; MyScanner() { bf = new BufferedReader(new InputStreamReader(System.in)); } String next() { while (st == null || !st.hasMoreTokens()) { try { st = new StringTokenizer(bf.readLine()); } catch (Exception e) { e.printStackTrace(); } } return st.nextToken(); .. 더보기
백준 17267 상남자 https://www.acmicpc.net/problem/17267 17267번: 상남자 CTP의 대표 상남자 영조는 자유롭게 이동하는 것을 좋아한다. 그렇지만 영조는 상남자이기 때문에 위아래로만 간다. 따라서 위, 아래로는 얼마든지 이동할 수 있지만 왼쪽, 오른쪽으로는 이동하지 않는다. 하지만 영조의 행동이 답답한 영조의 친구 보성이는 영조가 위, 아래로만 가는 걸 막기 위해 영조와 같이 다니며 왼쪽으로 최대 L번 오른쪽으로 최대 R번만큼 이동할 수 있게 영조를 도와준다. 영조와 보성이는 지도 밖으로는 나가지 않는다. 갈수 있는 땅, 벽의 www.acmicpc.net visited[x][y] 을 x,y 에 도착했을떄 남은 L+R의 최대값이 정의했다. (배열을 [L][R]까지 모두 사용하면 메모리 초과한.. 더보기
백준 18809 Gaaaaarden https://www.acmicpc.net/problem/18809 18809번: Gaaaaaaaaaarden 첫째 줄에 정원의 행의 개수와 열의 개수를 나타내는 N(2 ≤ N ≤ 50)과 M(2 ≤ M ≤ 50), 그리고 초록색 배양액의 개수 G(1 ≤ G ≤ 5)와 빨간색 배양액의 개수 R(1 ≤ R ≤ 5)이 한 칸의 빈칸을 사이에 두고 주어진다. 그 다음 N개의 줄에는 각 줄마다 정원의 각 행을 나타내는 M개의 정수가 한 개의 빈 칸을 사이에 두고 주어진다. 각 칸에 들어가는 값은 0, 1, 2이다. 0은 호수, 1은 배양액을 뿌릴 수 없는 땅, 2는 배양 www.acmicpc.net 전형적인 삼성 역량테스트에서 나올법한 문제 너무 친절하게 테스트케이스를 다 줘서 생각보다 쉽게 풀었던 문제이다. .. 더보기