자바 203

[JAVA] 백준 1463번- 1로 만들기

https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); i..

ALGORITHM 2022.10.25

[JAVA] char단위 입출력- Reader/Writer

HTML 삽입 미리보기할 수 없는 소스 char단위의 입출력은 문자열 입출력을 위해 특화된 기법이다. char단위로 입출력을 수행하는 기본 클래스는 Reader와 Writer추상 클래스다. Reader클래스의 자식 클래스에는 FileReader, BufferedReader, InputStreamReader가 있고, Wirter의 자식 클래스에는 FileWriter, BufferedWriter, OutputStreamWriter, PrintWriter가 있다. 여기서 InputStreamReader와 OutputStreamReader 클래스는 byte단위의 데이터 입출력 클래스인 InputStream과 OutputStream을 char 단위의 입출력 클래스인 Reader와 Writer로 변환하는 클래스다...

BACK/JAVA 2022.10.23

[JAVA] byte단위 입출력- InputStream/OutputStream

자바의 입출력은 크게 byte 단위의 입출력과 char 단위의 입출력으로 나눌 수 있다. 우선 byte단위의 입출력인 InputStream과 OutputStream 추상클래스에 대해 포스팅하고 다음 포스팅에서 char 단위의 입출력을 포스팅한다. InputStream 입력으로 InputStream 추상 클래스가 사용된다. InputStream을 상속해 추상 메서드를 구현한 자식 클래스에는 FileInputStream, BufferedInputStream, DataInputStream이 있다. FileInputStream으로 InputStream 객체 생성하기 // 입력 파일 생성 File inFile = new File("src/files/FileInput-Stream1.txt"); // FileInpu..

BACK/JAVA 2022.10.23

[JAVA] 자바로 파일 관리하기(File 클래스)

자바의 File 클래스는 파일과 폴더를 관리하는 클래스이다. 파일 객체를 생성하는 시점에서는 실제 파일의 존재 유무는 문제가 되지 않는다. 다만 해당 경로에 실제 파일이 존재하지 않을 때 File 객체로 파일을 읽으려고 하면 FileNotFoundException이 발생한다. 파일 객체 생성하기 File tempDir = new File("D:/temp"); // 폴더 객체 생성 if(!tempDir.exists()) // 폴더가 없을 때 tempDir.mkdir(); // 실제 폴더 생성 System.out.println(tempDir.exists()); // true // 파일 객체 생성 File newFile = new File("D:/temp/newFile.txt"); if(!newFile.exi..

BACK/JAVA 2022.10.23

[JAVA] 백준 2089번- -2진수

https://www.acmicpc.net/problem/2089 2089번: -2진수 -2진법은 부호 없는 2진수로 표현이 된다. 2진법에서는 20, 21, 22, 23이 표현 되지만 -2진법에서는 (-2)0 = 1, (-2)1 = -2, (-2)2 = 4, (-2)3 = -8을 표현한다. 10진수로 1부터 표현하자면 1, 110, 111, 100, 101, 11010, 110 www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main{ public static void main(String[] args) throws IOExceptio..

ALGORITHM 2022.10.21

[JAVA] 백준 17299번- 오등큰수

https://www.acmicpc.net/problem/17299 17299번: 오등큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Stack; import java.util.StringTokenizer; public class Main{ public static void main(String[] args) throws IOException { ..

ALGORITHM 2022.10.10

[JAVA] 백준 6588번- 골든바흐의 추측

https://www.acmicpc.net/problem/6588 6588번: 골드바흐의 추측 각 테스트 케이스에 대해서, n = a + b 형태로 출력한다. 이때, a와 b는 홀수 소수이다. 숫자와 연산자는 공백 하나로 구분되어져 있다. 만약, n을 만들 수 있는 방법이 여러 가지라면, b-a가 가장 큰 www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader..

ALGORITHM 2022.10.09

[JAVA] 백준 1676번 - 팩토리얼 0의 개수

https://www.acmicpc.net/problem/1676 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net 방법1 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.math.BigInteger; public class Main{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System..

ALGORITHM 2022.10.09

[JAVA] 백준 2609번- 최대공약수와 최소공배수(유클리드 호제법)

https://www.acmicpc.net/problem/2609 2609번: 최대공약수와 최소공배수 첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다. www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main{ public static int gcd(int a, int b){ if(b==0) return a; else return gcd(b, a%b); } public static void main(String[]..

ALGORITHM 2022.10.09

[JAVA] 백준 11656번- 접미사 배열

https://www.acmicpc.net/problem/11656 11656번: 접미사 배열 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다. www.acmicpc.net import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; public class Main{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)..

ALGORITHM 2022.10.09