알고리즘/백준 문제 및 정답
문제 번호 2231번 : 분해합 - JAVA [자바]
문제 번호 2231번 : 분해합 - JAVA [자바]
2023.04.26https://www.acmicpc.net/problem/2231 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 문제 설명 주어진 수와 그 수의 각 자리수를 더했을 때 나오는 값을 입력했을 때 주어진 수를 구하는 문제입니다. 문제 풀이 이 문제는 간단합니다. 해당 1~해당 수 만큼 반복해서 모두 비교해보면 됩니다! 저는..진짜 이 방법일주는 몰랐습니다. 해당 문제가 브루트 포스 문제라는 것과 주어진 시간이 2초라고 봤을 때 눈치 챘어야 됐는데.. import java.util.S..
문제 번호 2798번 : 블랙잭 - JAVA [자바]
문제 번호 2798번 : 블랙잭 - JAVA [자바]
2023.04.21https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 문제 설명 모든 경우의 수를 다 살펴봐야 하는 브루트 포스 알고리즘 문제입니다. 문제 풀이 해당 카드를 모두 더 해보고 원하는 숫자와 가장 가까운 숫자를 찾아야 합니다. 3가지 카드로 구성해라 했으니 for문을 3개를 돌려야 할 것입니다. 그래야 3가지 카드를 모두 더한 값을 구할 수있으니깐요. 첫 반복문은 첫 카드부터 두 번째 반복문은 첫 반복문의 다음 카드부터 ..
문제 번호 24313번 : 알고리즘 수업 - 점근적 표기 1 - JAVA [자바]
문제 번호 24313번 : 알고리즘 수업 - 점근적 표기 1 - JAVA [자바]
2023.04.21https://www.acmicpc.net/problem/24313 24313번: 알고리즘 수업 - 점근적 표기 1 f(n) = 7n + 7, g(n) = n, c = 8, n0 = 1이다. f(1) = 14, c × g(1) = 8이므로 O(n) 정의를 만족하지 못한다. www.acmicpc.net 문제 설명 시간복잡도의 탈을 쓴 수학 문제입니다. 문제 풀이 이건 시간 복잡도에 대해 몰라도 됩니다. 오히려 함수 정의에 대한 이해가 필요한 문제입니다. 이것저것 기호가 많아서 어렵다고 느껴질 수 있는데 사실 별거 없으니 차근차근 한번 보겠습니다. O(g(n)) = {f(n) | 모든 n>=n0에 대하여 f(n)
문제 번호 24267번 : 알고리즘 수업 - 알고리즘의 수행 시간 6 - JAVA [자바]
문제 번호 24267번 : 알고리즘 수업 - 알고리즘의 수행 시간 6 - JAVA [자바]
2023.04.21https://www.acmicpc.net/problem/24267 24267번: 알고리즘 수업 - 알고리즘의 수행 시간 6 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 문제 설명 시간복잡도를 분석을 가장한 수학문입니다. 잘 응용해서 풀어봅시다. 문제 풀이 시간 복잡도에 대한 어느 정도 이해가 필요한 문제입니다. 시간 복잡도가 궁금하신 분들은 아래 게시글을 확인해 주세요. https://kkungchan.tistory.com/321 알고리즘 - 시간 복잡도(Time Complexity) 이번 게시물은 시간 복잡도에 대해 정..
문제 번호 24266번 : 알고리즘 수업 - 알고리즘의 수행 시간 5 - JAVA [자바]
문제 번호 24266번 : 알고리즘 수업 - 알고리즘의 수행 시간 5 - JAVA [자바]
2023.04.21https://www.acmicpc.net/problem/24266 24266번: 알고리즘 수업 - 알고리즘의 수행 시간 5 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 문제 설명 시간복잡도를 분석하는 문제입니다. 문제 풀이 시간 복잡도에 대한 어느 정도 이해가 필요한 문제입니다. 시간 복잡도가 궁금하신 분들은 아래 게시글을 확인해 주세요. https://kkungchan.tistory.com/321 알고리즘 - 시간 복잡도(Time Complexity) 이번 게시물은 시간 복잡도에 대해 정리해 보도록 하겠습니다. 정렬 알..
문제 번호 24265번 : 알고리즘 수업 - 알고리즘의 수행 시간 4 - JAVA [자바]
문제 번호 24265번 : 알고리즘 수업 - 알고리즘의 수행 시간 4 - JAVA [자바]
2023.04.19https://www.acmicpc.net/problem/24265 24265번: 알고리즘 수업 - 알고리즘의 수행 시간 4 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 문제 설명 시간복잡도를 분석하는 문제입니다. 문제 풀이 시간 복잡도에 대한 어느 정도 이해가 필요한 문제입니다. 시간 복잡도가 궁금하신 분들은 아래 게시글을 확인해 주세요. https://kkungchan.tistory.com/321 알고리즘 - 시간 복잡도(Time Complexity) 이번 게시물은 시간 복잡도에 대해 정리해 보도록 하겠습니다. 정렬 알..
문제 번호 24264번 : 알고리즘 수업 - 알고리즘의 수행 시간 3 - JAVA [자바]
문제 번호 24264번 : 알고리즘 수업 - 알고리즘의 수행 시간 3 - JAVA [자바]
2023.04.19https://www.acmicpc.net/problem/24264 24264번: 알고리즘 수업 - 알고리즘의 수행 시간 3 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 문제 설명 시간복잡도를 분석하는 문제입니다. 문제 풀이 시간 복잡도에 대한 어느 정도 이해가 필요한 문제입니다. 시간 복잡도가 궁금하신 분들은 아래 게시글을 확인해 주세요. https://kkungchan.tistory.com/321 알고리즘 - 시간 복잡도(Time Complexity) 이번 게시물은 시간 복잡도에 대해 정리해 보도록 하겠습니다. 정렬 알..
문제 번호 24263번 : 알고리즘 수업 - 알고리즘의 수행 시간 2 - JAVA [자바]
문제 번호 24263번 : 알고리즘 수업 - 알고리즘의 수행 시간 2 - JAVA [자바]
2023.04.19https://www.acmicpc.net/problem/24263 24263번: 알고리즘 수업 - 알고리즘의 수행 시간 2 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 문제 설명 시간복잡도를 분석하는 문제입니다. 문제 풀이 시간 복잡도에 대한 어느 정도 이해가 필요한 문제입니다. 시간 복잡도가 궁금하신 분들은 아래 게시글을 확인해 주세요. https://kkungchan.tistory.com/321 알고리즘 - 시간 복잡도(Time Complexity) 이번 게시물은 시간 복잡도에 대해 정리해 보도록 하겠습니다. 정렬 알..
문제 번호 24262번 : 알고리즘 수업 - 알고리즘의 수행 시간 1 - JAVA [자바]
문제 번호 24262번 : 알고리즘 수업 - 알고리즘의 수행 시간 1 - JAVA [자바]
2023.04.19https://www.acmicpc.net/problem/24262 24262번: 알고리즘 수업 - 알고리즘의 수행 시간 1 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 문제 설명 시간복잡도를 분석하는 문제입니다. 문제 풀이 시간 복잡도에 대한 어느 정도 이해가 필요한 문제입니다. 시간 복잡도가 궁금하신 분들은 아래 게시글을 확인해 주세요. https://kkungchan.tistory.com/321 알고리즘 - 시간 복잡도(Time Complexity) 이번 게시물은 시간 복잡도에 대해 정리해 보도록 하겠습니다. 정렬 알..
문제 번호 14215번 : 세 막대 - JAVA [자바]
문제 번호 14215번 : 세 막대 - JAVA [자바]
2023.04.14https://www.acmicpc.net/problem/14215 14215번: 세 막대 첫째 줄에 a, b, c (1 ≤ a, b, c ≤ 100)가 주어진다. www.acmicpc.net 문제 설명 삼각형 세 변의 조건과 정렬를 할 수 있으면 어렵지 않게 풀 수 있는 문제입니다. 문제 풀이 삼각형에 3변의 조건은 a+b>c 즉 짧은 두 변의 합이 긴 변의 길이보다 길어야 된다는 것입니다. 그렇다면 먼저 가장 짧은 두 변을 찾고 그 2변보다 같거나 클 경우 가장 긴 막대를 줄여서 삼각형을 맞춰줘야 합니다. 가장 긴 변을 두변의 합의 -1까지 줄이고 둘레를 구하게 되면 결국 (a+b)*2-1이 되게 됩니다. 정렬은 배열로 값을 받은 후 Arrays.sort()을 사용해 정렬하였습니다. import ja..
문제 번호 10101번 : 삼각형 외우기- JAVA [자바]
문제 번호 10101번 : 삼각형 외우기- JAVA [자바]
2023.04.14https://www.acmicpc.net/problem/10101 10101번: 삼각형 외우기 문제의 설명에 따라 Equilateral, Isosceles, Scalene, Error 중 하나를 출력한다. www.acmicpc.net 문제 설명 삼각형을 빙자한 조건문 문제입니다. 문제 풀이 사실 이 문제가 왜 정답률이 55%나 떨어졌는지 잘 모르겠습니다. 그냥 조건대로 쭉 작성하시면 무리없이 문제를 푸실 수 있으십니다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int each1 = sc.nextInt(); int each2 ..
문제 번호 9063번 : 대지- JAVA [자바]
문제 번호 9063번 : 대지- JAVA [자바]
2023.04.13https://www.acmicpc.net/problem/9063 9063번: 대지 첫째 줄에는 점의 개수 N (1 ≤ N ≤ 100,000) 이 주어진다. 이어지는 N 줄에는 각 점의 좌표가 두 개의 정수로 한 줄에 하나씩 주어진다. 각각의 좌표는 -10,000 이상 10,000 이하의 정수이다. www.acmicpc.net 문제 설명 좌표 값을 받아서 그 점으로 그릴 수 있는 최대 직사각형을 그리고 넓이를 구하는 문제입니다. 문제 풀이 해당 좌표를 받아 직사각형을 그리면 되는데 처음에는 어떻게 직사각형을 그려야 하는지 막막하실 수 있습니다. 손으로 좌표를 그려보고 직접 사각형을 그리다 보면 x의 최댓값과 최솟값 y의 최댓값과 최솟값이 사각형의 꼭지점으로 그려진다는 것을 알 수 있습니다. 해당 규칙을 ..