코딩테스트 연습(with java)/프로그래머스 (66) 썸네일형 리스트형 프로그래머스<2016년> 문제 설명 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요. 제한 조건 2016년은 윤년입니다. 2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다) 입출력 예 a b result 5 24 "TUE" 나의 코드) import java.time.DayOfWeek; import java.time.LocalDate; class S.. 프로그래머스<신고결과 받기> 코드해설) import java.util.HashMap; import java.util.HashSet; import java.util.Map; class Solution { public static int[] solution(String[] id_list, String[] report, int k) { int[] answer = {}; answer = new int[id_list.length]; /* * key 는 유저ID * value 는 신고한 유저ID의 set 을 가진 map * 동일한 유저ID에 대한 신고횟수는 1회로 처리하기 때문에 중복 허용을 하지 않는 set 을 value 로 사용 * */ Map reportedMap = new HashMap(); // [신고된ID, [신고한ID]] Map .. 프로그래머스<신고하기>-2차 수정 변수 위치 조절하면 성공할 수 있을 것 같다. 아직 수정이 많이 필요한 더티코드 단계 import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; class Solution { public int[] solution(String[] id_list, String[] report, int k) { ArrayList answser5 = new ArrayList(); String[] foranswer; for(int i=0;i 프로그래머스<신고결과> 저번에 다 못푼 문제를 위해 다시 개념서를 읽고 접근하였다. 그래서 생각해낸게 ArrayList를 통해 푸는 방법이다. 꼭 내 손으로 어떻게든 해결해내고 싶다. 복잡한걸 구현하는 문제가 아닌데, 간단히 구현할 로직이 잘 생각이 나지 않는다. 오늘 안에 다 풀고 싶었지만, 시간이 없는 관계로 내일 안에 마무리 지어야겠다. import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; class Solution { public int[] solution(String[] id_list, String[] report, int k) { int[] answer = {}; // TreeMap.. 프로그래머스<신고 결과 받기> 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 유저를 신고할 수 있습니다. 신고 횟수에 제한은 없습니다. 서로 다른 유저를 계속해서 신고할 수 있습니다. 한 유저를 여러 번 신고할 수도 있지만, 동일한 유저에 대한 신고 횟수는 1회로 처리됩니다. k번 이상 신고된 유저는 게시판 이용이 정지되며, 해당 유저를 신고한 모든 유저에게 정지 사실을 메일로 발송합니다. 유저가 신고한 모든 내용을 취합하여 마지막에 한꺼번에 게시판 이용 정지를 시키면서 정지 메일을 발송합니다. 다음은 전체 유저 목록이 ["muzi", "frodo", "apeach", "neo"]이고, k = 2.. 프로그래머스 ㅠㅠ import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; class Solution { public static int solution(int n, int[] lost, int[] reserve) { int answer = 0; answer = n-lost.length; ArrayList arrayLost = new ArrayList(Arrays.asList(lost)); ArrayList arrayreserve = new ArrayList(Arrays.asList(reserve)); for(int i=0; i 프로그래머스<내적> 문제 설명 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이) 제한사항 a, b의 길이는 1 이상 1,000 이하입니다. a, b의 모든 수는 -1,000 이상 1,000 이하입니다. 나의 코드) class Solution { public int solution(int[] a, int[] b) { int answer = 0 ; for(int i=0; i 프로그래머스<예산> 문제 설명 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 없습니다. 그래서 최대한 많은 부서의 물품을 구매해 줄 수 있도록 하려고 합니다. 물품을 구매해 줄 때는 각 부서가 신청한 금액만큼을 모두 지원해 줘야 합니다. 예를 들어 1,000원을 신청한 부서에는 정확히 1,000원을 지원해야 하며, 1,000원보다 적은 금액을 지원해 줄 수는 없습니다. 부서별로 신청한 금액이 들어있는 배열 d와 예산 budget이 매개변수로 주어질 때, 최대 몇 개의 부서에 물품을 지원할 수 있는지 return 하도록 solution 함수를 완성해주세요. 제한사항 d는 부서별로 신청한 .. 이전 1 2 3 4 5 6 ··· 9 다음