분류 전체보기
-
Problem : https://leetcode.com/problems/path-with-maximum-gold Difficulty : Medium Status : Solved Time : ??:??:?? 문제 설명 풀이 DFS로 풀이할 수 있는 문제. 총 grid 영역이 15 x 15이므로, 탐색을 통해 시간 내에 모든 경로를 테스트해 볼 수 있겠다. 풀이 코드 (Python)class Solution: dx = [0, 0, -1, 1] dy = [-1, 1, 0, 0] visited = [[]] n = 0 m = 0 def dfs(self, grid: List[List[int]], x : int, y : int, golds : int) -> int : ..
1219. Path with Maximum GoldProblem : https://leetcode.com/problems/path-with-maximum-gold Difficulty : Medium Status : Solved Time : ??:??:?? 문제 설명 풀이 DFS로 풀이할 수 있는 문제. 총 grid 영역이 15 x 15이므로, 탐색을 통해 시간 내에 모든 경로를 테스트해 볼 수 있겠다. 풀이 코드 (Python)class Solution: dx = [0, 0, -1, 1] dy = [-1, 1, 0, 0] visited = [[]] n = 0 m = 0 def dfs(self, grid: List[List[int]], x : int, y : int, golds : int) -> int : ..
2024.05.14 -
Problem : https://leetcode.com/problems/score-after-flipping-matrix/ Difficulty : Medium Status : Solved Time : ??:??:?? 문제 설명 풀이 비트마스킹은 너무 느렸다...! 좀 더 간결히, 그리고 문제의 본질을 꿰뚫어야 풀 수 있는 문제였다. 언뜻 보면 모든 경우의 수를 다 테스트해보아야 할 것 같지만, 함정이 있다. score는 이진법으로 계산되므로, 제일 높은 차수(0번째 column)가 모두 1인 경우가 그리디하게 가장 큰 값을 지니게 된다. 즉 column 0을 1로 세팅하도록 하자. 이제 column 1부터 순회를 시작하면 된다. 이 때, column 0이 원래 1인 경우는 row가 뒤집어진 경우이므로..
861. Score After Flipping MatrixProblem : https://leetcode.com/problems/score-after-flipping-matrix/ Difficulty : Medium Status : Solved Time : ??:??:?? 문제 설명 풀이 비트마스킹은 너무 느렸다...! 좀 더 간결히, 그리고 문제의 본질을 꿰뚫어야 풀 수 있는 문제였다. 언뜻 보면 모든 경우의 수를 다 테스트해보아야 할 것 같지만, 함정이 있다. score는 이진법으로 계산되므로, 제일 높은 차수(0번째 column)가 모두 1인 경우가 그리디하게 가장 큰 값을 지니게 된다. 즉 column 0을 1로 세팅하도록 하자. 이제 column 1부터 순회를 시작하면 된다. 이 때, column 0이 원래 1인 경우는 row가 뒤집어진 경우이므로..
2024.05.14 -
Problem : https://www.acmicpc.net/problem/17425 Difficulty : Gold 4 Status : Solved Time : ?? : ?? : ?? 문제 설명 더보기 두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8, 12, 24가 있다. 자연수 A의 약수의 합은 A의 모든 약수를 더한 값이고, f(A)로 표현한다. x보다 작거나 같은 모든 자연수 y의 f(y)값을 더한 값은 g(x)로 표현한다.자연수 N이 주어졌을 때, g(N)을 구해보자. 입력 및 출력 더보기입력 첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 100,000)가 주..
[백준/17425] 약수의 합Problem : https://www.acmicpc.net/problem/17425 Difficulty : Gold 4 Status : Solved Time : ?? : ?? : ?? 문제 설명 더보기 두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8, 12, 24가 있다. 자연수 A의 약수의 합은 A의 모든 약수를 더한 값이고, f(A)로 표현한다. x보다 작거나 같은 모든 자연수 y의 f(y)값을 더한 값은 g(x)로 표현한다.자연수 N이 주어졌을 때, g(N)을 구해보자. 입력 및 출력 더보기입력 첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 100,000)가 주..
2024.05.14 -
Problem : https://www.acmicpc.net/problem/2694 Difficulty : Gold 3 Status : Solved Time : 00:15:24 문제 설명 더보기 어떤 수열이 있을 때, 순서를 유지하면서 적절히 그룹으로 나누면서, 각 그룹에 들어있는 수의 합을 같게 만들 수 있다.예를 들어, 2, 5, 1, 3, 3, 7은 (2, 5), (1, 3, 3), (7)와 같이 나누면 각 그룹에 들어있는 수의 합이 7로 모두 같아진다.양의 정수로 이루어진 수열이 주어졌을 때, 이를 합이 같은 구간으로 나누는 방법은 여러 가지가 있다. 이때, 합의 최솟값을 구하시오.참고로 수열을 통째로 그룹 1개에 넣을 수 있다. 그럼 이때, 수의 합은 수열의 합이 된다. 입력 및 출력 더보기..
[백준/2694] 합이 같은 구간Problem : https://www.acmicpc.net/problem/2694 Difficulty : Gold 3 Status : Solved Time : 00:15:24 문제 설명 더보기 어떤 수열이 있을 때, 순서를 유지하면서 적절히 그룹으로 나누면서, 각 그룹에 들어있는 수의 합을 같게 만들 수 있다.예를 들어, 2, 5, 1, 3, 3, 7은 (2, 5), (1, 3, 3), (7)와 같이 나누면 각 그룹에 들어있는 수의 합이 7로 모두 같아진다.양의 정수로 이루어진 수열이 주어졌을 때, 이를 합이 같은 구간으로 나누는 방법은 여러 가지가 있다. 이때, 합의 최솟값을 구하시오.참고로 수열을 통째로 그룹 1개에 넣을 수 있다. 그럼 이때, 수의 합은 수열의 합이 된다. 입력 및 출력 더보기..
2024.05.12 -
Problem : https://leetcode.com/problems/largest-local-values-in-a-matrix Difficulty : Easy Status : Solved Time : ??:??:?? 문제 설명 풀이 최대 n의 크기가 100 이하고, 하나의 result를 확인하는 데는 9개의 셀이 필요하므로 짧은 시간 내에 전체를 전부 브루트포스로 해결해 볼 수 있다. 간단하게 구현만 하면 되는 문제. 풀이 코드(Python)class Solution: def largestLocal(self, grid: List[List[int]]) -> List[List[int]]: n = len(grid) answer = [[0]*(n-2) for _ in ran..
2373. Largest Local Values in a MatrixProblem : https://leetcode.com/problems/largest-local-values-in-a-matrix Difficulty : Easy Status : Solved Time : ??:??:?? 문제 설명 풀이 최대 n의 크기가 100 이하고, 하나의 result를 확인하는 데는 9개의 셀이 필요하므로 짧은 시간 내에 전체를 전부 브루트포스로 해결해 볼 수 있다. 간단하게 구현만 하면 되는 문제. 풀이 코드(Python)class Solution: def largestLocal(self, grid: List[List[int]]) -> List[List[int]]: n = len(grid) answer = [[0]*(n-2) for _ in ran..
2024.05.12 -
Problem : https://leetcode.com/problems/maximize-happiness-of-selected-children Difficulty : Medium Status : Solved Time : ??:??:?? 문제 설명 풀이 릿코드에서 맞닥뜨린 한국적인(?) 문제. 지금껏 릿코드 문제를 풀어서 느꼈던 점은. 왠지 백준 골드문제를 달아줘도 손색없을 난이도였다. 그리디로 접근해보자. 어떻게 사람을 뽑던 간에, 최종적으로 k명의 사람을 뽑으므로 감소치는 최대 k*(k-1)/2명이 될 것이다. happiness value는 음수가 될 수 없다. 즉 매 순간 행복도가 최대치인 아이들을 뽑고, 어느 시점에서 행복도 최대치가 0이라면 감소는 더 이상 적용되지 않는다. 즉 내림차순으로 정..
3075. Maximize Happiness of Selected ChildrenProblem : https://leetcode.com/problems/maximize-happiness-of-selected-children Difficulty : Medium Status : Solved Time : ??:??:?? 문제 설명 풀이 릿코드에서 맞닥뜨린 한국적인(?) 문제. 지금껏 릿코드 문제를 풀어서 느꼈던 점은. 왠지 백준 골드문제를 달아줘도 손색없을 난이도였다. 그리디로 접근해보자. 어떻게 사람을 뽑던 간에, 최종적으로 k명의 사람을 뽑으므로 감소치는 최대 k*(k-1)/2명이 될 것이다. happiness value는 음수가 될 수 없다. 즉 매 순간 행복도가 최대치인 아이들을 뽑고, 어느 시점에서 행복도 최대치가 0이라면 감소는 더 이상 적용되지 않는다. 즉 내림차순으로 정..
2024.05.09