백준 오답노트

백준 오답노트/정렬

백준 - 정렬 10814번 문제 틀린 이유 + 해결 완료

= 문제 = = 처음 접근 내용 = 그 전에 문제에서는 2차원 배열을 이용해서 접근했었는데, 이번에는 List를 이용해서 더 편하게 정렬하고 내가 더 편하게 뽑아내자 ! 라는 생각으로 접근했다. 어차피 앞에 숫자만 길이가 같고 그거 파싱해서 내가 원하는 값을 그대로 뽑아내면 되잖아? 라고 이런 식으로 접근을 했었는데, 런타임 오류가 발생했다. 왜 그러지 계속 생각하고 생각해도 이유를 못 찾았는데... 하루가 지나서 드디어 해결! = 틀린 이유 = 나이가 2자리만 받을 수 있는 환경이면 subString을 이용해서 나이 비교를 할 수 있지만, 1~200까지 입력이 가능하기 때문에 List에 저장해서 subString을 활용할 수가 없다. 그래서 이전 문제와 같은 방식으로 2차원 배열을 이용해서 해결했다. ..

백준 오답노트/반복문

백준 - 반복문 1110번 문제 효율적으로 접근하는 방법

= 문제 = = 내가 해결 한 방법 = 이 문제가 분명 어려운 문제가 아닌데 약 2시간 정도 씨름한 것 같다.. 내 풀이는 노가다에 가깝고 시간만 있으면 누구나 충분히 할 수 있는 수준의 코드고 다른 사람들은 어떻게 해결했는지 궁금해서 검색을 해봤는데 넘 허무했다... 출처 : https://st-lab.tistory.com/42 [백준] 1110번 : 더하기 사이클 - JAVA [자바] https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자 st-lab.tistory.com 이렇게 간단하게 해결할 수 있는 문제였다...

백준 오답노트/반복문

백준 - 반복문 15552번 문제 틀린 이유 + 해결 시간의 중요성

= 문제 = 입력 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. 출력 각 테스트케이스마다 A+B를 한 줄에 하나씩 순서대로 출력한다. 예제 입력 1 5 1 1 12 34 5 500 40 60 1000 1000 예제 출력 1 2 46 505 100 2000 = 처음 작성한 코드 = import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(..

백준 오답노트/정렬

백준 - 정렬 2751번 문제 틀린 이유 + 해결

package 정렬.silver; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int[] numbers = new int[n]; int temp = 0; for (int i = 0; i < numbers.length; i++) { numbers[i] = scanner.nextInt(); } for (int i = 0; i < numbers.length - 1; i++) { for (int j = i + 1; j < numbers.length; j++) { if (number..

백준 오답노트/정렬

백준 - 정렬 2587번 문제 틀린 이유 + 해결

= 문제 = 문제 어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30의 평균은 (10 + 40 + 30 + 60 + 30) / 5 = 170 / 5 = 34가 된다. 평균 이외의 또 다른 대표값으로 중앙값이라는 것이 있다. 중앙값은 주어진 수를 크기 순서대로 늘어 놓았을 때 가장 중앙에 놓인 값이다. 예를 들어 10, 40, 30, 60, 30의 경우, 크기 순서대로 늘어 놓으면 10 30 30 40 60 이 되고 따라서 중앙값은 30이 된다. 다섯 개의 자연수가 주어질 때 이들의 평균과 중앙값을 구하는 프로그램을 작성하시오. 입력 첫째 줄부터 다섯 번째 줄까지 한 줄에..

백준 오답노트/반복문

백준 반복문 - 2525번 문제 틀린 이유 + 리팩토링

= 문제 = 문제 KOI 전자에서는 건강에 좋고 맛있는 훈제오리구이 요리를 간편하게 만드는 인공지능 오븐을 개발하려고 한다. 인공지능 오븐을 사용하는 방법은 적당한 양의 오리 훈제 재료를 인공지능 오븐에 넣으면 된다. 그러면 인공지능 오븐은 오븐구이가 끝나는 시간을 분 단위로 자동적으로 계산한다. 또한, KOI 전자의 인공지능 오븐 앞면에는 사용자에게 훈제오리구이 요리가 끝나는 시각을 알려 주는 디지털 시계가 있다. 훈제오리구이를 시작하는 시각과 오븐구이를 하는 데 필요한 시간이 분단위로 주어졌을 때, 오븐구이가 끝나는 시각을 계산하는 프로그램을 작성하시오. 입력 첫째 줄에는 현재 시각이 나온다. 현재 시각은 시 A (0 ≤ A ≤ 23) 와 분 B (0 ≤ B ≤ 59)가 정수로 빈칸을 사이에 두고 순..

초보병일이
'백준 오답노트' 카테고리의 글 목록 (7 Page)