본문 바로가기

Algorithm/Programmers Java145

[JAVA] 프로그래머스 level2 순위 검색 https://school.programmers.co.kr/learn/courses/30/lessons/72412 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 2021 KAKAO BLIND RECRUITMENT > 순위 검색 시간 초과 코드 (정확성 100점 / 효율성 0점)import java.util.*;import java.util.stream.*;class Solution { static class Applicant { private String lang; // cpp, java, python p.. 2024. 7. 27.
[JAVA] 프로그래머스 level2 양궁대회 https://school.programmers.co.kr/learn/courses/30/lessons/92342 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 2022 KAKAO TECH INTERNSHIP  > 양궁대회 문제 접근백트래킹(재귀)문제!! 핵심정리1. 어피치가 10점을 2발 맞혔고 라이언도 10점을 2발 맞혔을 경우 어피치가 10점2. k점을 여러 발 맞혀도 k점 보다 많은 점수를 가져가는 게 아니고 k점만 가져가는 것을 유의3. 최종 점수가 더 높은 선수를 우승자로 결정합니다. 단, 최종 점수가 같을 경우 어피치를 우승자로.. 2024. 7. 24.
[JAVA] 프로그래머스 level2 두 큐 합 같게 만들기 https://school.programmers.co.kr/learn/courses/30/lessons/118667 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 2022 KAKAO TECH INTERNSHIP  > 두 큐 합 같게 만들기 문제 접근처음 접근은 단순하게 각 큐의 크기를 비교하면서 왼쪽큐가 크면 왼쪽큐에서 원소를 빼서 오른쪽 원소에 추가 오른쪽큐가 크면 오른쪽 큐에서 원소를 빼서 왼쪽 원소에 추가를 반복하였다. 이렇게 푸니까 시간초과가 발생했다. 시간 초과 코드(93점)import java.util.*;class Solutio.. 2024. 7. 23.
[JAVA] 프로그래머스 level2 연속 부분 수열 합의 개수 https://school.programmers.co.kr/learn/courses/30/lessons/131701 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 연습문제 > 연속 부분 수열 합의 개수 문제 접근처음에는 백트래킹을 사용해서 문제를 풀었다.  먼저 처음 매개변수로 넘어온 elements를 똑같이 연결해서 마치 원형 수열처럼 만들었다.ex) 1,2,3 수열 --> 1,2,3,1,2,3  이렇게 만들고 나서 백트래킹을 사용  return 조건 1. 현재 커서(depth) 더 이상 사용할 원소가 없는 경우2. 연속 부분 수열의 길이.. 2024. 7. 18.
[JAVA] 프로그래머스 level2 귤 고르기 https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 연습문제 > 귤 고르기  문제 접근map, stream, iterator를 활용해서 문제를 해결했다. 자바의 Map.Entry, Iterator, Stream을 활용할 줄 알면 아주 간단한 문제였다. 코테에서 자주 나오는 친구들이니 몰랐다면 이번 기회에 익혀두는 걸 추천한다.   다시 생각해 보니까 굳이 stream을 사용하지 않고 map.values()를 사용해서 리스트로 뽑는 .. 2024. 7. 13.
[JAVA] 프로그래머스 level2 디펜스 게임 https://school.programmers.co.kr/learn/courses/30/lessons/142085 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr코딩테스트 연습 > 연습문제 > 디펜스 게임  문제 접근우선순위 큐 활용 문제?이다.  우리는 언제 무적권이라는 스킬을 써야 할지 정해야 한다. 백트래킹을 통해서 모든 경우의 수를 알아내고 적절하게 무적권을 써서 최선의 결과를 알고 싶지만 제한사항을 보면 데이터 셋이 매우 큰 편임을 알 수 있다. 이렇게 항상 데이터의 크기를 먼저 보고 백트래킹 적용 가능성을 체크하자. 무적권 스킬을 언제 사용할지 못.. 2024. 7. 13.