본문 바로가기

Algorithm/Baekjoon65

[백준 알고리즘][자바] 10890번 : 알파벳 찾기 https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net 문제해설 소문자로 구성된 단어가 주어졌을 때, a부터 z까지의 알파벳에 대해서 포함한다면 처음 등장하는 위치를 출력 포함 되지 않으면 -1을 출력한다. 해결방법 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; im.. 2021. 3. 10.
[백준 알고리즘][자바] 11720번 : 숫자의 합 https://www.acmicpc.net/problem/11720 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 문제 해설 숫자를 입력했을 때 문자로 받은 다음 숫자 N개로 잘라서 합을 출력하는 문제 포인트는 int등의 자료형으로 숫자를 받았을 때 예제 3번의 경우는 overflow가 발생한다. 따라서 문자열로 받아야 하는 점 해결 방법 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.Outp.. 2021. 3. 5.
[백준 알고리즘][자바] 4344번 : 평균은 넘겠지 https://www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net 문제 해설 문제에 있는 예제를 쉽게 풀어 설명하자면 학교에 C개의 반이 있을 때 각각의 반마다 N명의 학생 수 가 존재한다. N명의 학생의 평균 점수를 구해서 N명중의 몇명이 평균을 넘는지 구해서 비율로 나타낸다. 해결 방법 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.Ou.. 2021. 3. 4.
[백준 알고리즘][자바] 1546번 : 평균 https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 문제 해설 전에 했던 최댓값 구하기를 통해 최댓값을 구한 후 문제에 제시된 식 대로 점수를 조작한 후 평균을 구하면 될 거 같다. 해결 방법 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.Ou.. 2021. 3. 4.
[백준 알고리즘][자바] 2562번 : 최댓값 https://www.acmicpc.net/problem/2562 2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어 www.acmicpc.net 문제 해설 서로 다른 9개의 자연수이닌깐 크기가 9인 배열을 생성하고 값을 배열에 담은 후 최댓값을 찾는다. 시도해보자. 해결 방법 package number_2562; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.Input.. 2021. 3. 2.
[백준 알고리즘][자바] 10818번 : 최소, 최대 https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net 문제 해결 이번 문제의 카테고리는 배열이었다. N개의 정수 중 최댓값과 최솟값을 출력하는 문제이다. 해결 방법 첫 번째 시도 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import ja.. 2021. 1. 19.
[백준 알고리즘][자바] 1110번 : 더하기 사이클 https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net 문제 해설 14를 예를 들어보자. 1 + 4 = 5이다. 새로운 수는 45이다. 4 + 5 = 9 이다. 새로운 수는 59이다. 5 + 9 = 14 이다. 새로운 수는 94이다. 9 + 4 = 13 이다. 새로운 수는 43이다. 4 + 3 = 7이다. 새로운 수는 37이다. . . . 쭉 해서 다시 14가 나올때까지의 연산의 횟수를 구해야 한다.(일의 자리는 앞에 0을 붙이고 시작).. 2021. 1. 14.
[백준 알고리즘][자바] 10951번 : A+B - 4 https://www.acmicpc.net/problem/10951 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 문제 해설 일반적인 A+B 와 다른 점은 EOF를 알아야 한다는 점이다. EOF란 End of File 의 약자로 파일의 끝을 의미한다. BufferedReader를 통해 입력을 받을 때, 10952번 문제에서는 입력 값이 0이였을 때 반복문을 종료하였지만 10952번에서는 EOF를 통하여 입력을 종료 해야한다. 2021/01/10 - [Algorithm/Baekjoon] - [백준 알고리즘][자바] 10952번 : A+B -5 [백준 알고리즘][자바] 10952번 : A+B -5 https://www.a.. 2021. 1. 10.
[백준 알고리즘][자바] 10952번 : A+B -5 https://www.acmicpc.net/problem/10952 10952번: A+B - 5 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 해결 방법 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException { Buffer.. 2021. 1. 10.
[백준 알고리즘][자바] 15552번 : 빠른 A+B https://www.acmicpc.net/problem/15552 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net 문제 해설 테스트 케이스를 여러 줄을 입력 받기 때문에 입출력 방식이 느리면 시간초과가 날 수 있다. 따라서 BufferdReader와 BufferdWriter 를 사용하여 입출력을 해야한다. 해결 방법 public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReade.. 2021. 1. 10.
반응형