728x90
728x90
[Java] 귤 고르기 - Lv2 프로그래머스
코딩테스트/프로그래머스2023. 3. 22. 07:06[Java] 귤 고르기 - Lv2 프로그래머스

https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 주어진 k값을 내려가며 k가 0보다 작아질 때 종료시켰다. 주어진 귤의 크기의 중복값이 필요해서 Map을 선언하여 getOrDefault메서드를 활용해 중복일 경우 숫자를 증가시켜 해당 귤의 크기의 갯수를 파악했고 Value에 대한 내림차순 정렬이 필요했기 때문에 따로 List를 선언하여 내림차순 정렬을 한 후 문제를 풀었다. import java.util*; class Solution {..

[Java] 멀리 뛰기 - Lv2 프로그래머스
코딩테스트/프로그래머스2023. 3. 21. 14:48[Java] 멀리 뛰기 - Lv2 프로그래머스

https://school.programmers.co.kr/learn/courses/30/lessons/12914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문제에 규칙이 있다. 그냥 최대 방법의 가지수를 쭉 나열해보니 1 - 1 - 2 - 3 - 5 - 8 - 13 ......이 나왔고 이전배열과 이전이전배열의 값을 더해주기만 하면 되는 문제였다 ( 피보나치배열 ) class Solution { public int solution(int n) { int answer = 0; int[] arr = new int[2001]; arr[1] = 1; ..

[Java] 행렬의 곱셈 - Lv2 프로그래머스
코딩테스트/프로그래머스2023. 3. 18. 07:03[Java] 행렬의 곱셈 - Lv2 프로그래머스

https://school.programmers.co.kr/learn/courses/30/lessons/12949 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 행렬의 곱이란 수학적 개념자체를 아예 몰라서 문제를 보고도 이해를 못했다. 문제 자체가 이해가 안되는 것은 처음이었다. 인터넷을 찾아봤고 나무위키 설명이 개인적으로 이해가 잘 되어서 나무위키를 보고 문제를 이해했다. https://namu.wiki/w/%ED%96%89%EB%A0%AC%EA%B3%B1 행렬곱 - 나무위키 어느 학교에는 우등생을 따로 모아서 교육시키는 특별반인 '우수반'과 '수..

[Java] 올바른 괄호 - Lv2 프로그래머스 스택/큐
코딩테스트/프로그래머스2023. 3. 17. 06:37[Java] 올바른 괄호 - Lv2 프로그래머스 스택/큐

https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 큐를 활용해서 다음 괄호값과 비교하여 풀었고 첫 괄호가 ")"이거나, 큐에 입력되는 값이 ")"일 경우 false처리를 해 주었다. class Solution { boolean solution(String s) { if(s.charAt(s.length()-1) == '(') return false; Queue queue = new LinkedList(); queue.add(s.charAt(0..

[Java] 프린터 - Lv2 프로그래머스 스택/큐
코딩테스트/프로그래머스2023. 3. 14. 20:44[Java] 프린터 - Lv2 프로그래머스 스택/큐

https://school.programmers.co.kr/learn/courses/30/lessons/42587# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 첫 접근은 큐를 활용하여 먼저 들어온 녀석이 다음 값보다 작을 경우 뺏다가 후순위로 보내어 풀면 되겠다. 라고 생각하여 접근했지만 뺀 값들을 어떻게 활용할 지 번뜩이는 아이디어가 없어서 일단 그냥 풀어봤다. class Solution { public int solution(int[] priorities, int location) { int answer = 0; int length = pri..

[Java] 구명보트 - Lv2 프로그래머스 탐욕법
코딩테스트/프로그래머스2023. 3. 14. 16:39[Java] 구명보트 - Lv2 프로그래머스 탐욕법

https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문제에서 최대 2명밖에 탑승이 되지 않는다고 했기 때문에, 최적의 값을 구할 때 limit와 가장 가까운 값을 찾기 위해 가장 무거운 사람과 가장 가벼운 사람을 같이 태워 limit값보다 무게가 크다면 무거운 사람만 태우는 식으로 해서 조건을 줬다. class Solution { public int solution(int[] people, int limit) { int answer = 0; ..

[Java] 호텔 대실 - Lv2 프로그래머스
코딩테스트/프로그래머스2023. 3. 13. 18:06[Java] 호텔 대실 - Lv2 프로그래머스

https://school.programmers.co.kr/learn/courses/30/lessons/155651 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 첫 접근부터 단순하게 생각하여 분 단위를 index로 하는 배열을 선언해서 객실 이용중일 때와 닫혔을 때를 단순 때려박아서 구하려고 했다. 청소를 10분간 진행하기로 했으니 분단위의 00:00~23:59인 0~1440에 청소시간을 더한 1450을 length로 두었다. int[] fulltime = new int[24*60+10]; 퇴실 기간이 23:51이상인 값을 고려하지 않았다. 예약 ..

[Java] 혼자서 하는 틱택토 - Lv2 프로그래머스
코딩테스트/프로그래머스2023. 3. 12. 09:49[Java] 혼자서 하는 틱택토 - Lv2 프로그래머스

https://school.programmers.co.kr/learn/courses/30/lessons/160585 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 테스트케이스 53, 54에서 좀 막혔던 문제이다. 53, 54케이스의 경우, O와 X모두 정답일 때를 고려한 케이스인 것 같으니 참고하자. 오답일 경우의 수를 생각해봤다. 1. 승자가 없을 때 : o와 x 수 비교 - o는 x보다 2개 이상 많으면 안되고, x는 o보다 1개 이상 많으면 안된다. 2. o가 승리 시 : o는 x보다 무조건 1개 많아야한다. 3. x가 승리 시 : x는 o의 ..

728x90
728x90
image