본문 바로가기

java

(27)
백준 25305번 문제 커트라인(Java_자바) https://www.acmicpc.net/problem/25305 25305번: 커트라인 시험 응시자들 가운데 1등은 100점, 2등은 98점, 3등은 93점이다. 2등까지 상을 받으므로 커트라인은 98점이다. www.acmicpc.net 문제를 확인해 보면 주어진 점수 중에서 특정 등수의 점수를 찾는 문제, 예를 들어 5명의 학생의 점수가 주였을 때 2등의 점수를 찾자! 여태 내가 풀었던 문제들과 다른 점은.. 높은 점수순부터 낮은 점수순으로 정렬(내림차순)을 요구한다는 점! 여태 풀어본 거는 오름차순... 그럼 아래 정리해 보자! int n = sc.nextInt(); int k = sc.nextInt(); Integer arr[] = new Integer[n]; for (int i = 0; i <..
백준 2587번 문제 대표값2 (Java_자바) https://www.acmicpc.net/problem/2587 2587번: 대표값2 어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30의 평균은 (10 + 40 + 30 + 60 + www.acmicpc.net 문제를 확인해 보자! 1. 주어진 5개의 정수를 배열에 저장, 2. 배열의 중앙값과 평균값을 계산, 출력 내가 틀린 부분! 평균값은 입력된 5개의 합을 5로 나누면 나오는데, 중앙값은 배열을 정렬했을 때 가운데 위치로 찾아야 하는데 첫 번째 시도 때 정렬... 을 안 했다... 어쩐지 쉽게 가더라... 아래에 부분 정리 해보자! int arr[] = new i..
백준 2750번 문제 수 정렬하기(Java_자바) https://www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 수 정렬하기 문제를 풀어보자! 우선 문제를 확인해 보자 /./ 주어진 입력 예제를 보면 1. 첫번째 행은 수열 개수 '5'를 입력 (1 이상 1,000 이하) 해주는거 같고 ( 예제 입력 5 ) 2. 두번째 행부터 중복하지 않은 숫자로 입력한 수열 개수 (-1,000 이상 1,000 이하의 정수)만큼 넣어주자 ( 예제 입력 5, 2, 3, 4, 1 ) 입력해준 값들을 '오름차순'으로( 예제 출력 1, 2..
백준 2444번 문제 별 찍기 - 7(Java_자바) https://www.acmicpc.net/problem/2444 2444번: 별 찍기 - 7 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. www.acmicpc.net 별 예제는 다른 부분들도 있는데 별 문제에서 가장 어렵지 않나 싶다.. 풀어보자! int n = sc.nextInt(); 예제 입력값 '5'를 담을 변수 선언해 주자! // 위쪽 부분 출력 for (int i = 1; i 0; i--) { for (int j = 0; j < n - i; j++) { System.out.print(" "); } for (int j = 0; j < 2 * i - 1; j++) { System.out.print("*"); } System.out.println(); } 행 for문 ' 0부터 n -..
백준 2563번 문제 색종이(Java_자바) https://www.acmicpc.net/problem/2563 2563번: 색종이 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 문제를 해석해보자! 수학적인 사고가 필요할꺼 같지만 문제 자체는 단순히 주어진 색종이들이 붙여진 종이에서 실제로 색종이가 붙은 부분의 넓이를 계산하는것이다. 정리해보자! int[][] paper = new int[100][100]; // 종이 표시 배열 int n = scanner.nextInt(); // 색종이의 개수 문제에서 제시한 가로, 세로 크기 100 x 100 흰 색 도화지를 행렬 100 ..
백준 10798번 문제 세로읽기(Java_자바) 오늘은 백준 10798 세로읽기를 풀어보자! 아래 문제부터 보자! https://www.acmicpc.net/problem/10798 10798번: 세로읽기 총 다섯줄의 입력이 주어진다. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. 주어지는 글자는 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’ www.acmicpc.net 2차원 'char' 배열을 사용하여 문제를 풀어보자! 문제를 해석하자면, 1.각 문자열을 'char' 배열로 저장하고 2. 해당 배열의 행과 열을 바꾸어 출력 1. 총 다섯줄을 입력 (0행 ~ 4행 or 1행 ~ 5행) 2. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. (0열 ~ 14 열 or..
백준 11720번 숫자의 합(Java_자바) https://www.acmicpc.net/problem/11720 11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 단계 중 '문자열'에 속하는 '숫자의 합' 을 풀어보자.. 우선 문제를 보자!! 음... 정말 짧군... 변수를 준비해보자 int N = 0; String a = ""; int sum = 0; '정수 N' 는 숫자의 개수! '문자열 a' 는 '정수 N'개 만큼 입력된 문자열 '정수 sum' 에 정수 N 개수 만큼의 합을 누적해주자! 예제 입력으로 확인해보자! for문 초기치 i를 0으로, 조건식을 i < N, 당연히 증감 i++ // 예제 입력 // 5 정수 N // 54321 ..
백준 2566번 문제 최댓값(Java_자바) 문제 https://www.acmicpc.net/problem/2566 2566번: 최댓값 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다. www.acmicpc.net 오늘은 백준 사이트 7단계 '2차원 배열 > 2566번 최댓값 '을 풀어보자! 문제를 확인해 보자! 와... 매번 느끼는 거지만 문제를 볼 때마다 숨이 턱 하고 막히는... 나만 느끼는 건 아닐 거라는... 우선! 1줄(0번째 인덱스)부터 9줄(8번째 인덱스) 행과 열 둘다 동일하게 만들어주자!! import java.util.Scanner; public class MaximumValue_2566 { publi..