다이나믹프로그래밍3 프로그래머스 - N으로 표현 문제 설명 N에 대한 사칙연산으로 number를 만들 수 있는 최소 N의 사용개수를 구하는 문제이다. n의 사용횟수에 따라 값을 저장한다. 하지만 아래 방식처럼 알고리즘을 작성하면 “12 = (55 + 5) / 5” 해당식에서 나타난 괄호에 대한 우선순위 적용이 안되어있어 최소 개수를 구할 수 가 없다. 왜냐하면 괄호 연산에 따라 값이 달라지기 때문이다. := 사칙연산은 우선순위가 존재하므로 “4+4*4“ 의 식이 주어질때 20으로 계산된다. 하지만 괄호가 들어간 (4+4) * 4 식으로 바꾸면 32가 나오듯이 괄호에 따라 중간 결과값이 달라지는 경우가 많아 해당 괄호도 있도록 알고리즘을 구성해야 한다. 괄호가 있도록 구성하기 위해 n이라는 숫자를 4번 사용하여 만드는 경우의 수를 구할떄 n을 3번 사용.. Algorithm/프로그래머스 2023. 4. 21. 백준 - 퇴사 문제 설명 나는 퇴사 전날 까지 많은 수익을 낼것이다. 하루 마다 벌어들일 수 있는 수익과 처리 기간이 주어진다. 이것들을 잘 분배하여 최대 수익을 낼 것이다. 생각한 아이디어 퇴사 n+1날은 일을 할 수 없으니 n일 까지만 일을 할 수 있다. dp[i] =: i 날 부터 시작해서 퇴사 전날까지 벌어들일 수 있는 수익으로 맨 뒤부터 데이터를 채워나갔다. 풀이 static class Node { private int day; private int profit; public Node(int day, int profit) { this.day = day; this.profit = profit; } } public static void main(String[] args) throws IOException { Bu.. Algorithm/백준 2023. 2. 12. 백준__2229번 : 조 짜기 (골드 5) www.acmicpc.net/problem/2229 2229번: 조 짜기 알고스팟 캠프에 N(1≤N≤1,000)명의 학생들이 참여하였다. 학생들은 열심히 공부를 하고 있었는데, 어느 날 조별 수업을 진행하기로 하였다. 조별 수업의 목적은 잘 하는 학생들과 덜 잘 하는 학 www.acmicpc.net 문제 알고스팟 캠프에 N(1≤N≤1,000)명의 학생들이 참여하였다. 학생들은 열심히 공부를 하고 있었는데, 어느 날 조별 수업을 진행하기로 하였다. 조별 수업의 목적은 잘 하는 학생들과 덜 잘 하는 학생들을 같은 조로 묶어서 서로 자극을 받으며 공부하도록 만들기 위함이다. 따라서 가급적이면 실력 차이가 많이 나도록 조를 편성하는 것이 유리하다. 하지만 조를 편성할 때 같은 조에 속하게 된 학생들의 나이 차이.. Algorithm/백준 2021. 1. 5. 이전 1 다음