728x90
반응형

전체 글 260

[프로그래머스 JAVA] 베스트앨범

📌 문제 링크: 프로그래머스 - 베스트 앨범🧩 문제 요약스트리밍 사이트에서 장르별로 인기 있는 노래를 모아 베스트 앨범을 출시하려 합니다.조건은 다음과 같습니다:장르별 총 재생 수가 많은 순서대로 앨범에 수록각 장르 안에서는 재생 수가 높은 곡부터, 같은 재생 수일 경우 고유 번호가 낮은 곡부터 수록장르당 최대 2곡까지 수록🛠️ 접근 방식1. 정보 정리용 Map 2개 생성gubnMap: 장르별 총 재생 수 저장 (Map)playMap: 장르별 곡 리스트 저장 (Map> → [재생 수, 고유번호])2. 정렬 기준장르 정렬: 총 재생 수 기준 내림차순곡 정렬: 재생 수 기준 내림차순, 같은 경우 고유 번호 기준 오름차순✅ 코드import java.util.*;class Solution { publ..

[프로그래머스 JAVA] 모의고사

문제 링크✅ 문제 설명세 명의 수포자가 각각 정해진 방식으로 모의고사 문제를 찍습니다.수포자 1: 1, 2, 3, 4, 5 반복수포자 2: 2, 1, 2, 3, 2, 4, 2, 5 반복수포자 3: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5 반복실제 정답 배열 answers가 주어질 때, 누가 가장 많이 맞혔는지를 판단하고, 1번부터 3번까지의 수포자 중 가장 높은 점수를 받은 사람의 번호를 오름차순 배열로 반환해야 합니다.🔍 핵심 아이디어수포자마다 찍는 패턴이 반복되므로 % 연산자를 통해 정답과 비교합니다.세 명의 점수를 각각 누적해 저장합니다.최고 점수를 가진 수포자들을 모두 추려내 오름차순 정렬합니다.✅ 코드import java.util.*;class Solution { public ..

[프로그래머스 JAVA] 이진 변환 반복하기

📌 문제: 이진 변환 반복하기 - 프로그래머스🔍 문제 핵심 요약0과 1로 이루어진 문자열 s가 주어질 때, 다음 과정을 반복하여 s가 "1"이 될 때까지 몇 번의 이진 변환을 거쳤는지와 이 과정에서 총 몇 개의 0이 제거되었는지를 구하는 문제입니다.✅ 이진 변환 과정:문자열에서 모든 '0' 제거남은 문자열 길이를 이진수로 변환변환된 문자열을 다음 s로 설정⚠️ 주의할 점변환 대상 문자열의 길이는 최대 150,000이므로 문자열 처리 성능이 중요합니다.replace("0", "")로 '0' 제거 시 원래 길이와 비교해 몇 개의 '0'이 제거되었는지 계산합니다.이진수 변환은 Integer.toString(길이, 2)로 처리하면 간단합니다.🔧 자바 코드 with 주석class Solution { p..

[프로그래머스 JAVA] 3진법 뒤집기

🔗 문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/68935📌 문제 요약자연수 n이 주어졌을 때,이를 3진법 문자열로 변환하고,해당 문자열을 뒤집은 후,다시 10진법 정수로 변환한 결과를 반환해야 합니다.예시:n (10진수)3진법 변환뒤집은 3진법결과 (10진수)451200002171251112222111229💻 전체 코드class Solution { public int solution(int n) { String ternary = Integer.toString(n, 3); // 1. 3진법 변환 String reversed = new StringBuilder(ternary).r..

[프로그래머스 JAVA] 문자열 압축

문제 링크 🔗✅ 1. 문제 핵심 요약문자열을 일정 길이로 잘라서, 같은 문자열이 반복되면 개수와 함께 압축하는 방식으로 가장 짧은 압축 문자열 길이를 구하는 문제입니다.핵심 포인트는 **"1개 이상 단위로 잘라서 압축"**할 수 있다는 점이며, 모든 단위의 길이를 고려하여 가장 짧은 경우를 찾아야 합니다.⚠ 2. 주의 사항문자열은 반드시 앞에서부터 순차적으로 잘라야 하며, 중간에서 임의 분할은 허용되지 않습니다.압축 단위 길이는 1부터 s.length() / 2까지만 시도하면 충분합니다.반복 횟수 1은 생략합니다. 즉, "1a"가 아닌 "a"로 표현됩니다.남는 문자열은 압축하지 않고 결과에 그대로 붙입니다.🔄 3. 알고리즘 로직 (슈도코드)min_length = 문자열 길이for 압축 단위 from ..

[프로그래머스 JAVA] 완전범죄

문제 링크 → 완전범죄 문제 바로가기🗝️ 1. 문제 요약A, B 도둑이 모든 물건을 훔쳐야 함각 물건은 A 또는 B 중 하나만 훔칠 수 있음A 도둑 흔적 누적합 nB 도둑 흔적 누적합 m조건을 지키며 A의 흔적 누적합을 최소화해야 함조건 만족 불가 시 -1 반환⚠️ 2. 입출력 예제 분석입력info = [[1, 2], [2, 3], [2, 1]];n = 4;m = 4;📊 3. DP 상태 저장표 시뮬레이션dp[a][b] = A도둑 누적 흔적 a, B도둑 누적 흔적 b일 때 도달 가능 여부를 의미하며,A 도둑 누적 흔적의 최소합을 추적합니다.n = 4, m = 4 → 배열 크기는 4 x 4✅ 초기 상태dp[0][0] = 0 (시작 상태)🧩 1단계: 첫 번째 물건 ([1, 2])A가 훔침 → A +1 =..

[프로그래머스 JAVA] 이상한 문자 만들기

문제 링크 👉 프로그래머스 - 이상한 문자 만들기📝 1. 문제의 핵심 요약주어진 문자열 s에서 각 단어의 짝수 번째 알파벳은 대문자, 홀수 번째 알파벳은 소문자로 변환해야 합니다. 여기서 짝/홀수는 문자열 전체 기준이 아니라, 단어별 기준입니다. 공백은 그대로 유지해야 합니다.예시:입력 → "try hello world"출력 → "TrY HeLlO WoRlD"⚠️ 2. 주의 사항단어는 공백(' ')으로 구분되며, 공백의 개수는 한 개 이상일 수 있습니다.각 단어에서 인덱스 0부터 짝/홀을 판단합니다.공백은 그대로 두고 처리합니다.🛠️ 3. 슈도코드1. 문자열을 문자 배열로 변환한다.2. 문자 배열을 순회하며: a. 공백이면, 짝/홀수 인덱스 카운터를 0으로 초기화하고 공백을 결과에 추가한다. ..

[프로그래머스 JAVA] 시저 암호

문제 링크 👉 https://school.programmers.co.kr/learn/courses/30/lessons/12926🔑 1. 문제 핵심 요약주어진 문자열 s의 각 알파벳 문자를 n만큼 밀어 암호화하는 문제입니다.대소문자는 따로 순환 처리해야 하고, 공백은 그대로 둬야 합니다.⚠️ 2. 주의사항공백 ' '은 변하지 않습니다.대문자 ↔ 대문자, 소문자 ↔ 소문자 → 따로 처리.밀었을 때 'z'를 넘으면 'a', 'Z'를 넘으면 'A'로 돌아가야 함.Character 클래스 사용 → isUpperCase, isLowerCase로 깔끔한 분기 가능.🛠️ 3. 슈도코드for 각 문자 c in 문자열: if c == ' ': 그대로 추가 else if c는 대문자: ..

[프로그래머스 JAVA] 자연수 뒤집어 배열로 만들기

📌 문제 링크👉 프로그래머스 문제 바로가기✨ 1. 문제의 핵심 요약주어진 자연수 n을 뒤집어서 각 자리 숫자를 배열로 반환하는 문제입니다.예: 12345 → [5,4,3,2,1]⚠️ 2. 주의 사항n은 최대 10,000,000,000까지 주어지므로 long 타입으로 처리해야 합니다.문자열로 변환 후 역순 처리를 하면 구현이 간단해집니다.숫자를 문자로 바꾸면 '0' 문자를 빼주기 위해 - '0' 연산이 필요합니다.🛠️ 3. 슈도코드 (의사코드)1. n을 문자열로 변환2. 문자열을 뒤집기3. 각 문자를 하나씩 꺼내 정수로 변환해 배열에 담기4. 배열 리턴💡 4. 코드 + 주석class Solution { public int[] solution(long n) { // 1. long →..

[중식조리기능사 실기] 깐풍기

1. 요구사항✅ 닭은 뼈를 발라내고 사방 3cm 크기로 썰 것✅ 튀기기 전에 닭에 튀김옷을 입힐 것✅ 채소는 0.5cm x 0.5cm 크기로 썰 것2. 재료 및 양념주재료• 닭다리(허벅지살 포함) 1마리 (1.2kg, 반마리 지급 가능)양념류• 진간장 15mL• 청주 15mL• 달걀 1개• 흰설탕 15g• 식초 15mL• 검은후춧가루 1g• 마늘 3쪽• 생강 5g• 대파 흰부분 2토막(6cm)• 청피망 1/4개• 홍고추 1/2개• 녹말가루(감자전분) 100g• 참기름 5mL• 식용유 800mL• 소금 10g3. 조리 순서① 재료 손질닭 뼈 발라 사방 3cm 사각 썰기채소(대파, 청피망, 홍고추)는 0.5cm x 0.5cm로 썰기마늘, 생강 다지기② 튀김 준비4. 닭에 간장, 청주, 후춧가루, 소금으로 밑..

728x90
반응형