Backend/Algorithm 34

[코테] 중요한 단어를 스포 방지

문제 출처https://school.programmers.co.kr/learn/courses/30/lessons/468370 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이 핵심message 내 각 단어의 [start, end] 인덱스 파악하기스포일러 구간 먼저 파악 후,단어 하나씩 순회하며 비스포 방지 단어 저장(추후 비교)스포 방지 대상 단어는 별도로 저장이후 스포 방지 대상 단어를 순회하며비스포 방지 단어에 포함되어 있으면 skip중요한 단어에 없으면 추가, 결과값에 1 누적예시 코드 1import java.util.*;class Solution { public int solution(String ..

Backend/Algorithm 2026.07.09

[코테] 노란불 신호등

출처: https://school.programmers.co.kr/learn/courses/30/lessons/468371 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr핵심 포인트각 신호등은 일정한 주기를 반복하므로, 특정 시간 t에서 각 신호등의 불빛(값)을 알 수 있음각 신호등은 일정한 주기를 반복하므로, 모든 신호등의 패턴은 최소공배수(LCM)부터 동일하게 반복됨. 따라서 최대 LCM까지만 검사하면 됨문제의 제한은 신호등 최대 5개, 주기(R + Y + G의 합) 최대 20이므로, 최악의 경우 LCM은 LCM(16, 17, 18, 19, 20)임. 다 곱해도 그렇게 크지 않음(320만 미만) -> Brut..

Backend/Algorithm 2026.07.08

[알고리즘] 기사단원의 무기

#Claude Code의 Skill을 이용해 작성문제 출처프로그래머스 코딩 기초 트레이닝 - 기사단원의 무기 (Lv.1)링크: https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 내용숫자나라 기사단의 각 기사에게는 1번부터 number까지 번호가 지정되어 있다. 각 기사는 자신의 기사 번호의 약수 개수에 해당하는 공격력을 가진 무기를 구매한다. 단, 공격력이 제한수치(limit)를 초과하는 경우에는 협약기관에서 정한 공격력(power)을 가지는 무기를 구매해야 한다.예를 들어 15번 기사는 15의..

Backend/Algorithm 2026.05.16

[알고리즘] 성격 유형 검사하기 (2022 KAKAO TECH INTERNSHIP)

Github 링크https://github.com/ginsengcandy/Coding-Test-Practice/commit/7fed26a8520b92e82ea6ad850445725ea58ed3c6 [level 1] Title: 성격 유형 검사하기, Time: 1.45 ms, Memory: 91.8 MB -BaekjoonHub · ginsengcandy/Coding-Test-Practice@7f github.com문제 출처https://school.programmers.co.kr/learn/courses/30/lessons/118666 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr나의 코드import java.u..

Backend/Algorithm 2026.04.29

[알고리즘] 체육복

My Github Repository for Solution Code [level 1] Title: 체육복, Time: 8.62 ms, Memory: 68.7 MB -BaekjoonHub · ginsengcandy/Coding-Test-Practice@2c90b2d@@ -11,7 +11,8 @@ public int solution(int n, int[] lost, int[] reserve) {github.com Problem Source 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr Key Takeaways1. 여벌옷을 가져온 그룹, 잃어버린 그룹을 Set으로 변환하여 여벌옷을 가져왔으면서 잃어버린 학생 제거2..

Backend/Algorithm 2026.04.28

[알고리즘] 둘만의 암호

Beforeimport java.util.*;class Solution { public String solution(String s, String skip, int index) { String answer = ""; // skip의 각 문자를 set에 저장 -> c 와 c+index 사이의 알파벳이 skip에 포함되었는지 빠르게 확인하기 위함 // 스트림보다는 문자 배열로 변환한 뒤 각 배열의 원소를 추가하는 방식이 오버헤드가 덜함 Set skipSet = new HashSet(); for (char c : skip.toCharArray()) { skipSet.add(c); } // Strin..

Backend/Algorithm 2026.04.24

[알고리즘] 숫자 짝꿍

문제 분석: 숫자 짝꿍핵심 요구사항두 문자열 X, Y에서 공통으로 나타나는 숫자를 찾되, 짝지을 수 있는 개수만큼만 사용그 숫자들로 만들 수 있는 가장 큰 정수를 문자열로 반환공통 숫자가 없으면 "-1", 공통 숫자가 모두 0이면 "0" 반환X, Y의 길이가 최대 3,000,000으로 매우 큼 → 효율적인 알고리즘 필수Problem두 정수 X, Y의 임의의 자리에서 공통으로 나타나는 정수 k(0 ≤ k ≤ 9)들을 이용하여 만들 수 있는 가장 큰 정수를 두 수의 짝꿍이라 합니다(단, 공통으로 나타나는 정수 중 서로 짝지을 수 있는 숫자만 사용합니다). X, Y의 짝꿍이 존재하지 않으면, 짝꿍은 -1입니다. X, Y의 짝꿍이 0으로만 구성되어 있다면, 짝꿍은 0입니다.예를 들어, X = 3403이고 Y =..

Backend/Algorithm 2026.04.08