본문 바로가기

java3

[백준] 13116 30번 (Java 자바) https://www.acmicpc.net/problem/13116 13116번: 30번 첫 번째 줄에 테스트 케이스의 수 T (1 ≤ T ≤ 50 000)가 주어진다. 이후 T개의 테스트 케이스가 주어진다. 각 테스트 케이스는 한 줄로 구성되어 있으며, 각 줄에는 두 개의 정수 A와 B (1 ≤ A, B ≤ 1 www.acmicpc.net 문제 이 문제를 보면서 문제 만드시는 분도 참 힘들겠다는 생각이 들었습니다 . .🤧 접근 한 5분 곰곰히 그림을 관찰하다 보니 답이 떠올랐습니다. 이진 트리에 숫자를 차례대로 대응하다 보니 아래와 같은 규칙이 있더라구요. 부모 노드는 자식노드를 2로 나눈 몫이다. 이것만 발견하면 문제가 쉽게 풀립니다. 해결 1. A, B를 비교하여 큰 수를 2로 나누기 2. A, .. 2024. 4. 12.
[백준] 11053 가장 긴 증가하는 부분 수열 (자바 Java) https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 문제 접근(잘못된 버전) 제 생각을 대충 글로 표현해봤어요. i가 증가하면서 리스트를 한번 쭉 훑고, max를 저장하고 A[i]가 max보다 크면 dp의 값을 키워주면 되지 않을까? 싶었습니다. 즉 리스트를 한번만 훑으면서 max값과 비교하며 dp 리스트의 값을 업데이트 해주고, dp 배열의 max를 찾으면 그게 정답이.. 2024. 4. 3.
[백준] 1003 피보나치 함수 (자바 Java) 안녕하세요. 자바로는 처음 알고리즘 문제를 풀어봤어요. https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 문제 접근 피보나치 수가 주어졌을 때, 그때마다 fibonachi 1부터 하나하나 구하면 정말 오래걸리겠죠? 어차피 fibonachi N은 fibonachi N-1 + fibonachi N-2니까, 미리 2차원 배열을 만들어서 저장해두면 매번 재귀를 하지 않고 빠르게 결과값을 얻을 수 있어요. 원래는 "피보나치 수"를 2차원 배열에 저장했다면, 이번엔 이 문제에서 원하는 "0️⃣과 1️⃣ 호출 횟수"를 배열에 저장하면 돼요. 이 문제를 푸.. 2024. 4. 2.