자바54 프로그래머스 LV.2 위장 프로그래머스 LV.2 위장 1. 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr 2. 문제 해결에 대한 아이디어 1. 간단하게 얼굴, 상의, 하의, 겉옷을 입는 경우의 수를 구하는 문제이다. 2. 이를 위해, HashMap hm에 key : 옷의 종류, value : 옷의 수 를 저장했다. 3. 그리고 hm에서 하나씩 꺼내면서 아예 안 입는 경우를 포함한 value + 1을 answer에 곱해줬다. 4. 마지막으로 어떤 옷도 안 입는 경우가 포함되어 있으므로 --answer를 해준다. 3. 코드 import java.util.HashMap; public class Solution { .. 2021. 9. 24. 프로그래머스 LV.2 프린터 프로그래머스 LV.2 프린터 1. 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 2. 문제 해결에 대한 아이디어 1. 인쇄 대기목록의 앞 뒤에서 작업이 일어나므로 Deque를 사용했다. Deque q = new ArrayDeque(); 2. Work 클래스를 사용했으며, 요청 순서와 우선 순위로 구성하였다. 3. 먼저 int[] priorities에 있는 값들을 꺼내와 q에 넣었다. 4. q가 빌 떄.. 2021. 9. 23. LV.3 프로그래머스 베스트앨범 LV.3 프로그래머스 베스트앨범 1. 문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 2. 문제 해결에 대한 아이디어 . HashMap hm 에 각 장르 별로 총 몇 번 재생되었는지 저장했다. . 그 후, ArrayList ranks에 hm에 있는 정보를 옮겨왔다. . ranks를 재생 수를 기준으로 내림차순으로 정렬했다. . 그 후, ranks를 순회하며 각 노래의 정보를 가지고, genres[.. 2021. 9. 23. 백준 21609 상어 중학교 - 삼성 SW 역량 테스트 기출 백준 21609 상어 중학교 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/21609 21609번: 상어 중학교 상어 중학교의 코딩 동아리에서 게임을 만들었다. 이 게임은 크기가 N×N인 격자에서 진행되고, 초기에 격자의 모든 칸에는 블록이 하나씩 들어있고, 블록은 검은색 블록, 무지개 블록, 일반 블록 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 기준 블록의 조건이 매우 많다. . 블록 그룹 중 무지개 블록이 아닌 블록 중 . 행의 번호가 가장 작고 . 열의 번호가 가장 작은 블록 2. 블록 그룹을 찾는 조건이 매우 많다. . 그룹의 크기는 2 이상이어야한다. . 크기가 가장 큰 블록 그룹을 찾는다. . 그 중 무지개 블록.. 2021. 9. 22. 백준 21608 상어 초등학교 - 삼성 SW 역량 테스트 기출 백준 21608 상어 초등학교 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/21608 21608번: 상어 초등학교 상어 초등학교에는 교실이 하나 있고, 교실은 N×N 크기의 격자로 나타낼 수 있다. 학교에 다니는 학생의 수는 N2명이다. 오늘은 모든 학생의 자리를 정하는 날이다. 학생은 1번부터 N2번까지 번호 www.acmicpc.net 2. 문제 해결에 대한 아이디어 1. 학생들을 배치하고나서, 인접한 학생들 중 선호하는 학생이 얼마나 있는지에 따라 만족도에 대한 점수를 매긴다. 2. 만족도에 대한 점수를 매길 때, 어떤 학생의 선호학생 리스트를 사용해야한다. 3. 따라서, Student 클래스의 리스트를 만들어 각 객체마다 번호와 선호학생.. 2021. 9. 22. 백준 20058 마법사 상어와 파이어스톰 - 삼성 SW 역량 테스트 기출 백준 20058 마법사 상어와 파이어스톰 - 삼성 SW 역량 테스트 기출 1. 문제 링크 https://www.acmicpc.net/problem/20058 20058번: 마법사 상어와 파이어스톰 마법사 상어는 파이어볼과 토네이도를 조합해 파이어스톰을 시전할 수 있다. 오늘은 파이어스톰을 크기가 2N × 2N인 격자로 나누어진 얼음판에서 연습하려고 한다. 위치 (r, c)는 격자의 r행 c www.acmicpc.net 2. 문제 해결에 대한 아이디어 격자에 대한 반시계 방향 회전이 가장 어려웠다. 격자를 부분 격자로 나누어 각 부분 격자를 반시계 방향으로 돌리는 것이기 때문에 위치 보정이 힘들었다. 차라리 각 부분 격자를 돌리고나서 그 값을 격자에 넣는 것이 더 쉬울 것이다.(이렇게 안 함) 위치에 대한.. 2021. 9. 21. 이전 1 ··· 3 4 5 6 7 8 9 다음