본문 바로가기

PS41

백준 - 계단 오르기 ( Java ) 계단을 연속해서 3개 밟을 수 없고 , 2칸 밟고 1칸 띄고 ,1칸 밟고 2칸 띄고 하는 식으로 생각해야 된다. public class 계단오르기 { static Integer dp[]; static int arr[]; public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(bf.readLine()); dp = new Integer[N + 1]; arr = new int[N + 1]; for (int i = 1; i 2) { dp[2] = arr[1] + arr[2]; } Sys.. 2023. 12. 9.
백준 - 평범한 배낭 (Java ) Knasack Problem 백준 - 평범한 배낭 (Java ) Knasack Problem 풀기 준비 이 문제는 배낭에 넣을 수 있는 무게는 한정되어 있고 , 그 중에서 값어치가 가장 많이 나가는 물건들을 넣는 문제이다. 다시 말하자면 한정된 무게에 가장 값어치를 많이 채울 수 있는 경우를 구하는 문제이다. 수학에서 아주 유명한 문제이다. 나도 이 문제를 대학생 때 알고리즘 시간에 배운 적이 있다. Knapsack Problem으로 말이다. 시간이 지나서 돌이켜보니 그때 공부를 열심히 좀 해둘걸 이라는 생각이 든다 . 대학생활을 대차게 날려먹은건 아닐까 하는 생각에 땅을 치고 후회해보지만 돌이킬 수 없으니 ㅠㅠ 후회만 할 뿐이다. 어쨌든 문제에 대한 설명은 이정도로 마치겠다. 다음 시간에는 풀이를 덧붙이도록 하겠다. 2023. 11. 26.
백준 - 피보나치 수 2 (Java) 피보나치 수를 구하는 문제인데 DP를 사용했다 . import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; public class Main { static Long dp[]; public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); int num = Integer.parseInt(bf.readLine()); dp = new Long[num + 1]; dp[0] = 0L; dp[1] .. 2023. 11. 26.
백준 - 알고리즘 수업 - 점근적 표기 1 ( Java ) 알고리즘 코드를 봤을때 대략적인 수행 시간을 유추할 수 있게 된 것 같다. package com.company.baekjoon.silver; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class 알고리즘점근적표기법1 { public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); String s = bf.readLine(); String[] split = s.split(" "); int a1 =.. 2023. 11. 25.