![[Java] 대충 만든 자판 - Lv1 프로그래머스](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fozv6V%2Fbtr1USmAKhv%2F0YsGKiurNHdSg5uqEZpRA1%2Fimg.png)
https://school.programmers.co.kr/learn/courses/30/lessons/160586# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 단순 targets배열에서 charAt을 사용해 한 글자씩 keymap과 대조하여 keymap배열 중 더 가까이있는 값을 idx에 담았고 혹시 idx값이 갱신되지 않을경우 존재하지 않는 값이기 때문에 answer[i]는 -1처리 해 주었다. class Solution { public int[] solution(String[] keymap, String[] targets) { int[] a..
https://school.programmers.co.kr/learn/courses/30/lessons/159994 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 goal을 컬렉션 List에 담아 맨 앞 값들이 같을 때 삭제처리했다. import java.util.ArrayList; import java.util.List; class Solution { public String solution(String[] cards1, String[] cards2, String[] goal) { List c1 = new ArrayList(); List c2 = ..
![[Java] 바탕화면 정리 - Lv1 프로그래머스](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc39T6k%2Fbtr1URneCbW%2FkGAY2kRKHE3kIrjWAUqoV1%2Fimg.png)
https://school.programmers.co.kr/learn/courses/30/lessons/161990 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 드래그 시 위, 왼쪽 / 아래, 오른쪽의 최소값과 최대값을 구했고 최대값은 +1해줘야 한다. class Solution2 { //이차원배열 내 상하좌우 가장 튀어나온 값 구하기. public int[] solution(String[] wallpaper) { int top = Integer.MAX_VALUE; int left = Integer.MAX_VALUE; int bottom = Int..
![[Java] 덧칠하기 - Lv2 프로그래머스](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fba8jQw%2Fbtr1USTmkDq%2Fkh0LjPTl3gnirquvVJ3rok%2Fimg.png)
https://school.programmers.co.kr/learn/courses/30/lessons/161989 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 접근 n은 전체길이, m은 한번 칠 할 수 있는 최대 길이, section은 칠해야 하는 곳이다. 한번 페인트를 칠하려고 벽에 갖다 대면 최대 길이만큼 무조건 칠해야한다. m=4이면 반드시 연속된 4미터를 칠해야한다. m이 4일 때, 시작지점이 2라면, 2,3,4,5 네 칸을 칠할 수 있다. m > 현재위치 - 시작위치 까지 한번에 칠할 수 있다. 풀이 배열을 단순히 배열의 처음부터 탐색하..
![[Java] 개인정보 수집 유효기간 - 2023 카카오 블라인드 Lv1 프로그래머스](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyBr6h%2FbtrWXjWGgq9%2FuwyNBZddnLvHLa3Fz3Cqt0%2Fimg.png)
문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 String형식의 날짜(2022.05.05)를 형변환 한 뒤, Day로 치환하여 풀었다. 모든 달의 날짜가 28일까지라는 것이 조건이었기 때문에, 월별로 날짜의 수가 다른 것을 고려할 필요가 없었다. Int로 형변환 하는 메서드 substring을 활용하여 년, 월, 일을 뽑아내어 int형태의 날짜로 변환하였다. 문제 조건에서 년도는 2000~2022년도 까지라고 했기때문에 뒤의..
![베스트앨범 - 프로그래머스 해시 Lv3 Java](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FvQoJU%2FbtrWCFyhjUa%2F3tP05ehjVgBYKlC45CIBEK%2Fimg.png)
문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42579 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. getOrDefault Map의 getOrDefault 를 사용하여 문제의 최우선 조건인 속한 노래가 많이 재생된 장르가 우선시되는 것을 만족시켰다. getOrDefault(Object key, V DefaultValue) 찾는 key가 존재하면 해당 key에 매핑되어있는 값을 반환하고, 그렇지 않으면 디폴트 값이 반환된다. map.getOrDefault(genres[i], ..
문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/148653 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문제 설명에서 간단하게 추론할 수 있는것은 두 가지였다. 첫 번째는 1의 자리 수 부터 순차적으로 처리해야 한다는 것이다. 내려갔을 때는 상관이 없지만 올라갔을 때, 현재 층의 값이 증가하기 때문에, 큰 자리 수부터 계산하게 되면 한번 더 처리를 해야한다. 두 번째는 돌을 적게 쓰는 최적의 방법이다. 돌을 가장 적게 쓰는 방법은 5를 기준으로 5보다 크면 올라가고, 5보다 작다면..
![섬 연결하기 - 프로그래머스 LV3 JAVA](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbFEjxR%2FbtrUCiStET5%2FEzFyjn5tWopt7PW5VZokn0%2Fimg.png)
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해당 문제는 프로그래머스에서 탐욕법(Greedy) 카테고리 안에 있는 문제이다. 탐욕 알고리즘은 정리해 두었던 내용이다 ( 링크 ) 문제 풀이 아직 익숙치않은 Comparator 인터페이스로 이중배열인 costs의 값을 cost순으로 오름차순 했다는 것 정도다 Comparator의 사용법은 간단히 정리 해 두었다 ( 링크 ) 알고리즘 활용에 미숙해서인지 모르겠지만 내 생각엔 탐욕법이나 기타 알고리즘들을 사용해서 푼 것 같지는 않다 물론 이게 어떤 알고리즘이라고 한다면 공부를 더 깊게 해야 할 것 같다 1. 섬..