목록구현 (17)
It's easy, if you try
문제 19237번: 어른 상어 첫 줄에는 N, M, k가 주어진다. (2 ≤ N ≤ 20, 2 ≤ M ≤ N2, 1 ≤ k ≤ 1,000) 그 다음 줄부터 N개의 줄에 걸쳐 격자의 모습이 주어진다. 0은 빈칸이고, 0이 아닌 수 x는 x번 상어가 들어있는 칸을 의미 www.acmicpc.net 풀이 import java.io.*; import java.util.*; public class Main { static ArrayList[][] map; // 상어의 위치 static ArrayList[][] smellMap; // 상어의 냄새 정보 static Map orders; // 상어의 이동 우선순위 static int N; // 격자 범위 static int M; // 상어 숫자 static int k..
문제 23290번: 마법사 상어와 복제 첫째 줄에 물고기의 수 M, 상어가 마법을 연습한 횟수 S가 주어진다. 둘째 줄부터 M개의 줄에는 물고기의 정보 fx, fy, d가 주어진다. (fx, fy)는 물고기의 위치를 의미하고, d는 방향을 의미한다. 방향 www.acmicpc.net 풀이 import java.io.*; import java.util.*; public class Main { static int minNum; // 상어 이동 방향 사전순 제일 높은것 (숫자가 낮은) static int maxFishNum; // 상어가 가장 많이 먹을 수 있는 물고기 수 static ArrayList[][] map; static int[][] smellMap; static ArrayList copyFish;..
문제 23289번: 온풍기 안녕! 유난히 추운 날씨가 예상되는 이번 겨울을 대비하기 위해 구사과는 온풍기를 설치하려고 한다. 온풍기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기 www.acmicpc.net 풀이 import java.io.*; import java.util.*; public class Main { static int[][] map; static boolean[][] visited; static List checkAreas; static List machines; static boolean[][][][] wall; static int N, M, K, W; static int[] dx = {0, 0, 0, -1, 1}; // 1우, 2좌, 3상, ..
문제 20057번: 마법사 상어와 토네이도 마법사 상어가 토네이도를 배웠고, 오늘은 토네이도를 크기가 N×N인 격자로 나누어진 모래밭에서 연습하려고 한다. 위치 (r, c)는 격자의 r행 c열을 의미하고, A[r][c]는 (r, c)에 있는 모래의 양을 www.acmicpc.net 풀이 import java.util.*; import java.io.*; public class Main { static int N; static double[][] map; static int total = 0; static int[] dx = {0,1,0,-1}; static int[] dy = {-1,0,1,0}; static double[] percent = {1,1,2,2,7,7,10,10,5,0}; static in..
문제 20056번: 마법사 상어와 파이어볼 첫째 줄에 N, M, K가 주어진다. 둘째 줄부터 M개의 줄에 파이어볼의 정보가 한 줄에 하나씩 주어진다. 파이어볼의 정보는 다섯 정수 ri, ci, mi, si, di로 이루어져 있다. 서로 다른 두 파이어볼의 위치 www.acmicpc.net 풀이 import java.io.*; import java.util.*; public class Main { static int[] dx = { -1, -1, 0, 1, 1, 1, 0, -1}; static int[] dy = { 0, 1, 1, 1, 0, -1, -1, -1}; static List[][] map; static int N; static class Ball { int x, y, m, s, d; // cn..
문제 19238번: 스타트 택시 첫 줄에 N, M, 그리고 초기 연료의 양이 주어진다. (2 ≤ N ≤ 20, 1 ≤ M ≤ N2, 1 ≤ 초기 연료 ≤ 500,000) 연료는 무한히 많이 담을 수 있기 때문에, 초기 연료의 양을 넘어서 충전될 수도 있다. 다 www.acmicpc.net 풀이 import java.io.*; import java.util.*; public class Main { static int N, M, oil, cnt = 0; static int[][] map, start, dest; static int[] taxi; public static void main(String[] args) throws IOException { BufferedReader br = new Buffered..
문제 https://www.acmicpc.net/problem/21611 21611번: 마법사 상어와 블리자드 마법사 상어는 파이어볼, 토네이도, 파이어스톰, 물복사버그, 비바라기 마법을 할 수 있다. 오늘 새로 배운 마법은 블리자드이고, 크기가 N×N인 격자에서 연습하려고 한다. N은 항상 홀수이고, ( www.acmicpc.net 풀이 문제 설명을 정확히 이해한 후, 그~대로 코드로 옮기는 문제이다. import java.io.*; import java.util.*; public class Main { static int[] dx = { 0, -1, 1, 0, 0 }; // 칸 이동 static int[] dy = { 0, 0, 0, -1, 1 }; static int[] mx = { 0, 1, 0,..
문제 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변 www.acmicpc.net 풀이 import java.util.*; import java.io.*; public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static int N, M, maxNum = 0; static int[][] map; static boolean[][] visited; static int[]..
문제 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com > 벽돌 깨기 검색하기 ! 풀이 dropBoxToEmptyArea() 함수 즉, 벽돌들이 아래로 내려오게 하는 함수를 짜는게 제일 어려웠다ㅠㅠ bfs, 중복 순열을 사용해서 하라는대로 하면 되는 문제였다 ! import java.io.*; import java.util.*; public class Solution_5656_벽돌깨기 { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static int[][] map,..
문제 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net 풀이 import java.util.*; import java.io.*; public class Main { static BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); static StringTokenizer st; static int[][] map; static boolean[][] visited; static int N, M, year =0; static int[..