재귀함수가뭔가요? 17478 Java
·
문제풀이/백준
17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net package 백준.자바.재귀함수가뭔가요_17478; import java.io.*; import java.util.*; public class Main { private int k; private StringBuilder sb = new StringBuilder(); void dfs(int depth){ sb.append("____".repeat(depth)); sb.append("\"재귀함수가 뭔가요?\"").append('\n'); if(k == depth..
평범한 배낭 12865 Java
·
문제풀이/백준
12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000) www.acmicpc.net package 백준.자바.평범한배낭_12865; import java.io.*; import java.util.*; public class Main { private final int WEIGHT = 0; private final int VALUE = 1; public void solution() throws Exception { BufferedReader br = new BufferedReader..
할로윈의 양아치 20303 Java
·
문제풀이/백준
20303번: 할로윈의 양아치 첫째 줄에 정수 $N$, $M$, $K$가 주어진다. $N$은 거리에 있는 아이들의 수, $M$은 아이들의 친구 관계 수, $K$는 울음소리가 공명하기 위한 최소 아이의 수이다. ($1 \leq N \leq 30\ 000$, $0 \leq M \leq 100\ 000$, www.acmicpc.net package 백준.자바.할로윈의양아치_20303; import java.io.*; import java.util.*; public class Main { private int N, M, K; private int[] values; private int[] parents; public void solution() throws Exception { BufferedReader br ..
서강그라운드 14938 Java
·
문제풀이/백준
14938번: 서강그라운드 예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을 www.acmicpc.net package 백준.자바.서강그라운드_14938; import java.io.*; import java.util.*; public class Main { private int N, M, R; private int[][] map; public void solution() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st =..
2048(Easy) 12100 Java
·
문제풀이/백준
12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2 www.acmicpc.net package 백준.자바.Easy2048_12100; import java.io.*; import java.util.*; public class Main { private int N; private int[] putPos; class Update{ int index; int val; public Update(int i, int v){ index = i; val = v; } } class Pair{ int x; int y; int val..
벽부수고이동하기4 16946 Java
·
문제풀이/백준
16946번: 벽 부수고 이동하기 4 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 한 칸에서 다른 칸으로 이동하려면, 두 칸이 인접해야 한다. 두 칸이 www.acmicpc.net package 백준.자바.벽부수고이동하기4_16946; import java.io.*; import java.util.*; public class Main { private boolean[][] visited; private int N, M, indexNum; private int[][] map; private int[][] emptyCount; private int[] spaceCount; private int count; private i..
행성 터널 2887 Java
·
문제풀이/백준
2887번: 행성 터널 첫째 줄에 행성의 개수 N이 주어진다. (1 ≤ N ≤ 100,000) 다음 N개 줄에는 각 행성의 x, y, z좌표가 주어진다. 좌표는 -109보다 크거나 같고, 109보다 작거나 같은 정수이다. 한 위치에 행성이 두 개 이 www.acmicpc.net package 백준.자바.행성터널_2887; import java.io.*; import java.util.*; public class Main { private int[] parent; public void solution() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parse..
문제집 1766 Java
·
문제풀이/백준
1766번: 문제집 첫째 줄에 문제의 수 N(1 ≤ N ≤ 32,000)과 먼저 푸는 것이 좋은 문제에 대한 정보의 개수 M(1 ≤ M ≤ 100,000)이 주어진다. 둘째 줄부터 M개의 줄에 걸쳐 두 정수의 순서쌍 A,B가 빈칸을 사이에 두고 주 www.acmicpc.net package 백준.자바.문제집_1766; import java.io.*; import java.util.*; public class Main { public void solution() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.r..
카드 구매하기 11052 Java
·
문제풀이/백준
11052번: 카드 구매하기 첫째 줄에 민규가 구매하려고 하는 카드의 개수 N이 주어진다. (1 ≤ N ≤ 1,000) 둘째 줄에는 Pi가 P1부터 PN까지 순서대로 주어진다. (1 ≤ Pi ≤ 10,000) www.acmicpc.net package 백준.자바.카드구매하기_11052; import java.io.*; import java.util.*; public class Main { public void solution() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); int[] d = new int[N+1]..
파이프 옮기기 1 17070 Java
·
문제풀이/백준
17070번: 파이프 옮기기 1 유현이가 새 집으로 이사했다. 새 집의 크기는 N×N의 격자판으로 나타낼 수 있고, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c)로 나타낼 수 있다. 여기서 r은 행의 번호, c는 열의 www.acmicpc.net package 백준.자바.파이프옮기기1; import java.io.*; import java.util.*; public class Main { private int N; // true = 벽 private boolean[][] arr; private int count; private boolean checkEnd(Pair p){ if(!(p.x == N-1 && p.y == N-1)) return false; count += 1; ret..
OSNIE
osnie