코딩테스트(29)
-
[프로그래머스] 프린터_JAVA
문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 이 구문부터 물구나무 서고 봐도 큐에 관련된 문제임을 알 수 있다. 1. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼냅니다. 2. 나머지 인쇄 대기목록에서 J보다 중요도가 높은 문서가 한 개라도 존재하면 J를 대기목록의 가장 마지막에 넣습니다. 3. 그렇지 않으면 J를 인쇄합니다...
2022.02.11 -
[프로그래머스] 기능개발_JAVA
문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 뒤의 작업이 먼저 끝나더라도, 앞 작업이 끝나지 않으면 배포가 불가능하다는 성질 -> 큐 선입 선출의 성질을 가진 큐를 이용하여 풀기에 용이한 문제이다. 매일 각 progresses에 담긴 작업에 speeds만큼 작업량을 올려준다. que의 맨 앞에 있는 작업량이 100이상일 때, 해당 작업을 포함하여 연달아 작업량을 완수한게 있다면 poll로..
2022.02.11 -
[프로그래머스] 베스트앨범_JAVA
문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 노래를 수록하는 기준에 따라 차근차근 풀면 생각보다 어렵지 않은 문제. 1. 속한 노래가 많이 재생된 장르를 먼저 수록합니다. 해시맵을 에 곡을 담아 정렬한 후 가장 많이 재생된 순으로 장르를 구한다. 해당 장르를 String []sortedGenres 에 담는다. 2. 장르 내에서 많이 재생된 노래를 먼저 수록합니다. 1번 기준으로 정렬된 장르를 ..
2022.02.11 -
[프로그래머스] 위장_JAVA
문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr 문제를 읽고 파악하는 데 시간이 좀 들었던 녀석이다. 위장을 하는데 상,하의없이 모자만(?)입는 기행을 벌인다. (오히려 위장이 안 되지 않을까..?) 문제만 파악하면 풀이는 간단하다. 초등학교때 상의, 하의를 돌려입는 가짓 수 찾기를 떠올렸다. 해시 맵에 로 넣는다. 예를 들어 상의a, 상의b, 하의, 신발a, 신발b 가 있다면 가 각 해시 맵에 들어있을 것이다. 다만 '최소' 한 가지 의상이라 했으니 상의a, 상의b, 상의를 입지 않음
2022.02.10 -
[프로그래머스] 전화번호 목록_JAVA
문제 링크 https://programmers.co.kr/learn/courses/30/lessons/42577 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr 문제 난이도는 어렵지 않았다. 다만 효율성 체크가 있어 단순 이중 for문으론 입구 컷 당할 수 있음 간만에 풀어보다 보니 초반에 삽질하고 4번째에 성공... 이 문제는 해시 파트에 들어가 있던데 굳이 해시맵을 쓰지 않아도 가능하다고 판단했다. 다만 나처럼 substring을 써서 접두어를 일일히 빼는 것보단 startsWith()을 사용하는 게 ..
2022.02.10