백준 15654 : N과 M (5)
·
알고리즘
백준 15654 : N과 M (5)알고리즘 : 백트래킹https://www.acmicpc.net/problem/15654 문제N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성해라.N개의 자연수는 모두 다른 자연수이고, 수열은 사전 순으로 증가하는 순서로 출력 코드import java.util.*;import java.lang.*;import java.io.*;class Main { static int n, m; static int[] arr; static ArrayList result; static int[] temp; static boolean[] visited; public static void ma..
백준 15652 : N과 M (4)
·
알고리즘
백준 15652 : N과 M (4)알고리즘 : 백트래킹https://www.acmicpc.net/problem/15652 문제자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램 작성해라. 조건은 비내림차순이므로 An>An+1인 경우는 제외함만약에 비내림차순이라는 조건 없이 모든 경우를 다 구한다면 완전탐색(브루트포스) 문제지만, 이건 조건이 존재하므로 백트래킹이라고 볼 수 있다. 코드import java.util.*;import java.lang.*;import java.io.*;class Main { static int n, m; static List result; static int[] temp; public static void..
[MySQL] 프로그래머스 273712 - 업그레이드 할 수 없는 아이템 구하기
·
DB & SQL
https://school.programmers.co.kr/learn/courses/30/lessons/273712 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 코드 자체는 크게 복잡하지 않지만 처음에 문제 이해가 한번에 되지 않았던 점, 풀이 방식을 기억하고자 글을 남긴다. 프로그래머스 273712 - 업그레이드 할 수 없는 아이템 구하기 문제더 이상 업그레이드할 수 없는 아이템의 아이템 ID(ITEM_ID), 아이템 명(ITEM_NAME), 아이템의 희귀도(RARITY)를 출력하는 SQL 문을 작성해라. 결과는 아이템 ID를 기준으로 내림차순 정렬 필요 풀이문제를 해석해보면 'ITEM_A'->'ITEM_B..
[코테 챌린지 6일차] TIL 프로그래머스 JadenCase 문자열 만들기
·
알고리즘
프로그래머스 12951 : JadenCase 문자열 만들기https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제문자열의 각 단어를 "JadenCase" 형태로 바꾸는 문자열 처리 문제시간 복잡도: O(N) 풀이import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.IOException;public class Solution { public static void main(String[] args) throws IOE..
[코테 챌린지 4일차] TIL 백준 18126 : 너구리 구구
·
알고리즘
백준 18126 : 너구리 구구https://www.acmicpc.net/problem/18126 문제입구를 포함한 모든 방은 1부터 N까지의 번호가 있고, 입구는 1번이다. 구구의 집으로 들어가는 입구는 한 개이며 입구과 모든 방들은 총 N-1개의 길로 서로 오고 갈 수 있다.구구는 무더운 여름 햇살을 피해 최대한 입구에서 먼 방에 아이스크림을 숨기려고 한다.구구가 집 입구에서 멜론아 아이스크림을 숨기려고 하는 방까지 이동하는 거리를 구하여라.*입력조건*첫째 줄에 정수 N(1 ≤ N ≤ 5,000)이 주어진다.다음 N-1개의 줄에 구구의 집의 모든 길의 정보가 정수 A, B, C(1 ≤ A, B ≤ N, 1 ≤ C ≤ 1,000,000,000)로 주어진다.A번 방과 B번 방 사이를 양방향으로 연결하는 ..
[코테 챌린지 3일차] TIL 백준 2437 : 저울
·
알고리즘
3일차 2025.08.06 (수)백준 2437 : 저울 (골드 2)문제 : 여러개의 추를 입력받아, 추들로 측정할 수 없는 양의 정수 무게 중 최솟값을 구해라 딱 보고 그리디?라는 생각이 들긴했는데 처음에 접근한 방식은 추의 합으로 만들 수 있는 최대 값(maxSum)을 구해고, for문 돌면서 1부터 maxSum까지 탐색하면서 합을 만들 수 있는지 판단하는 방식이었다. 이렇게 되면 최악의 경우 10억 번 연산이 되어버린다.그렇다면 판단하는 로직을 백트래킹으로 바꾸면 가능한가? 이것도 시간 초과다. 그냥 그리디 알고리즘에 집중해서 푸는게 맞다. 그리고 풀이도 엄청 간단해진다.시간 복잡도 : O(N log N) 만들 수 없는 첫 번째 무게는 그 시점의 누적합보다 큰 추를 만났을 때 결정 import jav..
[코테 챌린지 2일차] TIL 백준 2468 : 안전 영역
·
알고리즘
2일차 2025.08.05(화)백준 2468 : 안전 영역 dfs로 덩어리를 조사하면 된다. 풀다가 좀 헷갈려서 dfs 구현을 해당 풀이처럼 직관적으로 보이게 작성했다.import java.util.*;import java.lang.*;import java.io.*;class Main { static int[][] map; static boolean[][] visited; static int N; static int max; // 결과값 static int count; public static void main(String[] args) throws IOException { // 비가 올 수 있는 양은 1부터 9. 각 경우의 안전지대 개수를 탐색하면서 ..
[코테 챌린지 1일차] TIL 백준 1929 : 소수 구하기
·
알고리즘
챌린지 기간 : 2025.08.04(월) ~ 2025.08.15(금)작심큰일 챌린지는 스파르타 코딩클럽에서 하는 하루에 하나씩 코테를 푸는 챌린지이다. 2주라는 기간은 짧지만 부담 없이 참여할 수 있을 것 같아 풀이도 남겨둘 겸 신청하게 되었다. 비기너, 미들러, 챌린저 중에 미들러를 선택했다. 목표는 꾸준히 풀고, 내 풀이에 대한 개념을 잘 정리하기다!1일차 2025.08.04(월)백준 1929 : 소수 구하기 (실버3)https://www.acmicpc.net/problem/1929 M과 N을 입력받고 M이상 N이하의 소수를 모두 출력하는 문제다. 소수 찾기 문제는 간단하지만서도 꼭 기억해둬야 할만한 부분인 것 같다. 핵심은 소수 탐색 범위이다. 입력값 범위 : (1 ≤ M ≤ N ≤ 1,000,00..
[백준/JAVA] 12865_평범한 배낭
·
알고리즘
https://www.acmicpc.net/problem/12865배낭 문제라고 알려져 있는 매우 유명한 문제다. *유튜브에서 발견한 상세한 풀이https://www.youtube.com/watch?v=V2vJp0GY-Fg 문제와 접근물품의 수 N(1 ≤ N ≤ 100)와 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어지고,N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000)가 주어진다.배낭에 넣을 수 있는 물건들의 가치합의 최댓값을 출력해라조합을 구하는 문제라고 생각했기에 완전탐색, 그리디, DP를 고려해봤다. 1. 완전탐색 - 불가능우선 물품 N개의 수가 100개라 하더라도 1개 구하는 경우, 2개 구하는 경우 ~ 100개 ..
[K8S] CKA 주요 개념 / 헷갈리는 개념 정리
·
Docker & Kubernetes
Deployment와 Pod의 관계Pod쿠버네티스에서 가장 작은 배포 단위자체적으로 복구 불가커맨드 : kubectl run --image= DeploymentPod를 생성하고 관리하는 상위 추상 개념 (일반적으로 많이 사용하는 개념!)Pod의 수명 주기를 관리해주는 운영 자동화 도구라고 볼 수 있다.원하는 개수(Replica)의 Pod를 유지해주며, 장애 복구, 롤링 업데이트, 버전 관리 등의 기능을 제공커맨드 : kubectl create deployment --image= kubectl을 통해서 Deployment를 만들면 내부적으로 이렇다.Deployment ㄴ-- ReplicaSet ㄴ-- Pod(s)Deployment는 목표 상태(desired sta..