백준 10988 펠린드롬인지 확인하기(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/10988 풀이과정 문자열을 뒤집어서 일치하는지 확인한다. 정답코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));// StringTokenizer st = new StringT..
백준 2979 트럭 주차(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/2979 풀이과정 입력되는 시간의 범위가 1 ~ 100 이므로 시간테이블을 저장하는 배열을 만들어서 각 분마다 몇 대의 차량이 주차하고 있는지를 카운팅한다. 정답코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(..
백준 10808 알파벳 개수(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/10808풀이과정 알파벳 개수 26개를 카운팅하는 배열을 이용한다.정답코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));// StringTokenizer st = new Str..
백준 2309 일곱 난쟁이(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/2309 풀이과정 9명의 키의 합을 모두 더한 후 이중 for문을 통해서 2명의 키를 빼서 합이 100이 되는 수를 찾는다. 정답코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));// ..
[백준(BOJ) 2480] 주사위 세개 (C++)
·
PS(Problem Solving)/C++
문제 링크 https://www.acmicpc.net/problem/2480 문제 정보 입력 첫째 줄에 3개의 눈이 빈칸을 사이에 두고 각각 주어진다. 출력 첫째 줄에 게임의 상금을 출력 한다. 풀이 abs 메서드와 max 메서드를 이용해서 풀이했다. 소스 코드 #include using namespace std; int main(void) { ios::sync_with_stdio(0); cin.tie(0); int a, b, c; cin >> a >> b >> c; int ans = 0; if (a == b && b == c) { ans = 10000 + a * 1000; } else if (abs(a - b) == 0 || abs(a - c) == 0 || abs(b - c) == 0) { if (a..
[백준(BOJ) 11729번] 하노이 탑 이동 순서 (C++)
·
PS(Problem Solving)/C++
문제 링크 https://www.acmicpc.net/problem/11729 문제 정보 입력 첫째 줄에 첫 번째 장대에 쌓인 원판의 개수 N (1 ≤ N ≤ 20)이 주어진다. 출력 두 번째 줄부터 수행 과정을 출력한다. 두 번째 줄부터 K개의 줄에 걸쳐 두 정수 A B를 빈칸을 사이에 두고 출력하는데, 이는 A번째 탑의 가장 위에 있는 원판을 B번째 탑의 가장 위로 옮긴다는 뜻이다. 풀이 재귀를 이용해서 해결할 수 있는 문제이다. 재귀를 공부할 때 귀납적 사고를 통해서 해결하라는 말이 있다. n-1개의 원판을 2번 으로 모두 옮긴 후, n번 원판을 3번으로 옮기고, 2번으로 옮겼던 n-1개의 원판을 3번으로 옮기면 된다. 소스 코드 #include using namespace std; void fun..
[백준(BOJ) 1697번] 숨바꼭질 (C++)
·
PS(Problem Solving)/C++
문제 링크 https://www.acmicpc.net/problem/1697 문제 정보 입력 첫 번째 줄에 수빈이가 있는 위치 N과 동생이 있는 위치 K가 주어진다. N과 K는 정수이다. 출력 수빈이가 동생을 찾는 가장 빠른 시간을 출력한다. 풀이 이 문제는 BFS의 응용 문제로 1차원에서의 BFS를 돌리는 문제이다. 소스 코드 #include using namespace std; #define X first #define Y second int dist[100002]; int n, k; int main(void) { ios::sync_with_stdio(0); cin.tie(0); cin >> n >> k; fill(dist, dist + 100002, -1); queue Q; Q.push(n); di..
[백준(BOJ) 4179번] 불! (C++)
·
PS(Problem Solving)/C++
문제 링크 https://www.acmicpc.net/problem/4179 문제 정보 입력 입력의 첫째 줄에는 공백으로 구분된 두 정수 R과 C가 주어진다. 단, 1 ≤ R, C ≤ 1000 이다. R은 미로 행의 개수, C는 열의 개수이다. 다음 입력으로 R줄동안 각각의 미로 행이 주어진다. 각각의 문자들은 다음을 뜻한다. #: 벽 .: 지나갈 수 있는 공간 J: 지훈이의 미로에서의 초기위치 (지나갈 수 있는 공간) F: 불이 난 공간 J는 입력에서 하나만 주어진다. 출력 지훈이가 불이 도달하기 전에 미로를 탈출 할 수 없는 경우 IMPOSSIBLE 을 출력한다. 지훈이가 미로를 탈출할 수 있는 경우에는 가장 빠른 탈출시간을 출력한다. 풀이 이 문제는 BFS의 응용 문제로 시작점이 두 종류일 때 해결..