백준 9012 괄호(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/9012 풀이과정 스택을 이용해서 풀이했다. 정답코드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)); int T = Integer.parseInt(br.readLine()); ..
백준 1436 영화감독 숌(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/1436 풀이과정 브루트 포스 방식으로 무작정 1씩 더해가면서 666이 포함되어 있으면 카운팅하는 방식으로 풀이했다. 정답코드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)); i..
백준 2852 NBA 농구(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/2852 풀이과정 흐름대로 구현하면 된다. String.format() 을 통해서 출력을 해주면 된다. 정답코드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)); int N = I..
백준 3474 교수가 된 현우(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/3474 풀이과정 N! 에서 오른쪽 0의 개수를 구하기 위해서는 10의 배수가 몇개인지 알아내면 된다. 10은 2와 5의 곱으로 만들어지기 때문에 N!에 2와 5가 몇개씩 포함되어 있는지 구한 후 둘 중 더 작은 값을 출력하면 된다.  N! 에서 2와 5의 개수를 어떻게 셀 수 있는지에 대한 풀이이다. 위 사진처럼 (N / 2) + (N / 2^2) + (N / 2 ^ 3) 이런식으로 2의 개수를 카운팅 할 수 있고, 5의 개수도 동일하게 구하면 된다. 정답코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) thr..
백준 10709 기상캐스터(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/10709 풀이과정 2차원 배열을 이용해서 풀이한다. 입력으로 c가 들어온 곳에 0을, 나머지는 -1로 배열을 초기화한다. 그리고 가로로 이동하면서 구름이 있던 곳의 숫자 + 1을 해서 풀이했다. 정답코드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(n..
백준 2870 수학숙제(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/2870 풀이과정 처음에 int, long 타입으로 풀이했으면 런타임 에러(NumberFormat)을 만났을 것이다. 문제에서 최대 100글자까지의 입력이 들어오기 때문에 기초 자료형으로는 이 범위를 커버할 수 없다. 따라서 범위가 무한정인 java.math 패키지에 있는 BigInteger를 사용해서 풀이해야 한다. 그리고 자바에서 문자열을 정수로 파싱할 때 자동으로 숫자의 앞에 오는 0은 무시된다. 정답코드import java.io.*;import java.math.BigInteger;import java.util.*;public class Main { public static void main(String[] args) thro..
백준 4659 비밀번호 발음하기(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/4659 풀이과정 문제에서 주어진 3가지 조건을 boolean을 이용해서 확인해서 풀이했다. 정답코드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)); String input = ..
백준 2910 빈도 정렬(JAVA)
·
PS(Problem Solving)/JAVA
문제 설명https://www.acmicpc.net/problem/2910 풀이과정 입력된 순서대로 맵에 저장하기 위해서 LinkedHashMap을 사용한다. 그리고, Collections.sort()를 사용해서 빈도 수 대로 맵을 정렬했다. 정답코드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 OutputSt..