본문 바로가기

Algorithm277

[백준] 1546번 : 평균 - Java https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 주의점 상대/절대 오차 : 10-2 (= 0.01)까지 허용 두 번째 줄 : 공백 기준으로 숫자 입력 받음 입력 받은 값 중 최대값 M 찾기 ➡ 모든 점수에 (점수 / M) * 100 연산 풀이 1. Scanner + Array import java.util.Arrays; import java.util.Scanner; public class Main { public static void ma.. 2022. 3. 4.
[백준] 3052번 : 나머지 - Java https://www.acmicpc.net/problem/3052 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net HashSet 1. 정의 자바 Collection 중 Set 의 파생클래스 Set은 집합의 개념으로 보면 됨 2. 특징 중복 허용 X 순서 개념 X ➡ Collections.sort() 사용 불가(정렬하려면 List (리스트)로 변환 필요) 3. 적용 입력 받은 숫자들의 각 나머지 값에서 서로 다른 숫자의 개수 세기 HashSet 사용 시 원소에 이미 저장되어 있어 중복일 경우 추가 저장 X, 중복 아닐 때만 저장 가능 4. 결론 HashSet에 들어간 원소의 개수 .. 2022. 3. 3.
[백준] 2577번 : 숫자의 개수 - Java https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 풀이 1. Scanner import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int value = (in.nextInt() * in.nextInt() * in.nextInt()); String str = Integer.toString(value); //int ➡ String 형변환 i.. 2022. 3. 3.
[백준] 10818번 : 최소, 최대 - Java https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net 주의점 N개의 정수가 공백으로 구분 후 입력됨 풀이 1. Scanner + Array (배열) import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); i.. 2022. 3. 2.
[백준] 1110번 : 더하기 사이클 - Java https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net 풀이 1. Scanner + while 문 + if 문 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int N = scan.nextInt(); int tmp = N; int cnt = 0; while(true.. 2022. 2. 28.
[백준] 10951번 : A + B - 4 - Java https://www.acmicpc.net/problem/10951 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 주의점 두 정수 : 공백으로 구분되어 입력됨 테스트 종료 기준 : 더 이상 읽을 수 있는 데이터가 없을 때(EOF) 구현 방법 1. Scanner + System.out.println() 2. BufferedReader + StringTokenizer + StringBuilder 자료형 타입 주의 st.nextToken(): 문자열 반환하기에, Integer.parseInt()로 int형으로 변환시켜야 함 3. BufferedReader + String.charAt() + StringBuilder 입력 숫.. 2022. 2. 23.
[백준] 10952번 : A + B - 5 - Java https://www.acmicpc.net/problem/10952 10952번: A+B - 5 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 참고 유형 https://unknownomad.tistory.com/99 [백준] 11021번 : A + B - 7 - Java https://www.acmicpc.net/problem/11021 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 구현 방법 입력 Scanner B.. unknownomad.tistory.com 주의점 두 정수 : 공백으로 구분되어 입력됨 테스트 종료 .. 2022. 2. 23.
[백준] 10871번 : X보다 작은 수 - 2 - Java https://www.acmicpc.net/problem/10871 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net 풀이 1. Scanner + Array import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); //첫 번째 줄 int N = in.nextInt(); int X = in.nextInt(); //두 번째 줄 int ar.. 2022. 2. 23.
[백준] 2439번 : 별 찍기 - 2 - Java https://www.acmicpc.net/problem/2439 2439번: 별 찍기 - 2 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. www.acmicpc.net 참고 유형 https://unknownomad.tistory.com/102 [백준] 2438번 : 별 찍기 - 1 - Java https://www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net 알고리즘 for ( int i = 1 ; i 2022. 2. 22.
[백준] 2438번 : 별 찍기 - 1 - Java https://www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net 알고리즘 for (int i = 1; i 2022. 2. 22.
[백준] 11022번 : A + B - 8 - Java https://www.acmicpc.net/problem/11022 11022번: A+B - 8 각 테스트 케이스마다 "Case #x: A + B = C" 형식으로 출력한다. x는 테스트 케이스 번호이고 1부터 시작하며, C는 A+B이다. www.acmicpc.net 참고 유형 https://unknownomad.tistory.com/99 [백준] 11021번 : A + B - 7 - Java https://www.acmicpc.net/problem/11021 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 구현 방법 입력 Scanner B.. unknownomad.tistory.. 2022. 2. 22.
[백준] 11021번 : A + B - 7 - Java https://www.acmicpc.net/problem/11021 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 구현 방법 입력 Scanner BufferedReader + StringTokenizer * 자료형 타입 주의! * st.nextToken(): 문자열 반환 ➡ Integer.parseInt()로 int형으로 변환시켜야 함 출력 System.out.println() BufferedWriter * BufferedWriter.write(): 단독으로 int형 값만 넣으면 아스키 코드값으로 인식되기에 다른 문자가 출력됨 ➡ 반드시 문자열과 int형을 함께 넣어야 int값.. 2022. 2. 21.