목록LV2 (37)
기록방
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 사람을 무게 제한이 limit인 구명 보트로 각각 최대 2명씩 구조할 수 있다. 모든 사람을 구하기 위한 구명보트 개수의 최솟값을 반환한다. 🔸 문제 풀이 🔸 그리디적으로 접근한다. 사람들의 몸무게를 정렬한다. 오름차순으로 정렬했을때 가장 무거운 사람이 오른쪽 끝에 있다. 가장 무거운 사람을 옮길 때 가장 가벼운 사람과 같이 탈 수 없다면, 혼자만 탈 수 있다. 가장 무거운 사람 + 가장 가벼운 사람 둘이 탈 수 있으면 타고 탈출하면 된다. 🔸 코드 🔸 import java.ut..
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 인원 수 n과 끝말잇기 문자열 배열이 입력된다. 몇 번째 인원이 자신의 몇 번째 차례에서 틀렸는지 반환한다. 아무도 틀리지 않았다면 [0, 0] 을 반환한다. 🔸 문제 풀이 🔸 각 문자열마다 직전 문자의 끝 문자를 잇는지, 이미 나왔던 문자는 아닌지 확인한다. 만약 나왔던 문자라면, 인원 번호와 그 차례를 저장하고 반복을 종료한다. 🔸 코드 🔸 import java.util.Set; import java.util.HashSet; class Solution { public int[..
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 직사각형의 태두리 격자 수 brown과 그 안쪽 격자의 수 yellow를 입력받는다. 직사각형의 가로와 세로 길이를 반환한다. 🔸 문제 풀이 🔸 가로 길이는 세로 길이보다 크거나 같다. 세로 길이를 1부터 가로와 같아 질 때 까지 키워가며 brwon과 yellow값이 나오는지 확인한다. brown = 2x + 2y - 4 2(x + y - 2) = brown x + y = brown/2 + 2 yellow = (x-2) * (y-2) 🔸 코드 🔸 class Solution { p..
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 문자열 s에서 2번 연속으로 나온 문자쌍을 제거해간다. 제거 한 후 앞 뒤로 붙여야하고 그때 만들어진 문자쌍도 지워야 한다. 🔸 문제 풀이 🔸 스택 자료구조를 사용한다. 스택의 가장 위 문자가 현재 문자와 같으면 꺼내고, 다르면 현재 문자를 스택에 넣는다. 마지막에 스택이 비어있으면 문자열을 모두 제거할 수 있는것이므로 1을 반환한다. 🔸 코드 🔸 import java.util.Stack; class Solution { public int solution(String s) { c..
👉 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 🔸 문제 분석 🔸 n번째 피보나치수를 1234567로 나눈 나머지를 리턴한다. 🔸 문제 풀이 🔸 피보나치수가 커져갈때마다 1234567로 나눠서 누적한다. 🔸 코드 🔸 class Solution { public int solution(int n) { int a = 0; int b = 1; int c; for(int i = 2; i