본문 바로가기

반응형

알고리즘

[프로그래머스] 프린터 #코틀린 #kotlin #큐 #queue #level2 https://programmers.co.kr/learn/courses/30/lessons/42587?language=kotlin 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr 풀이 먼저, 인쇄가 이루어지는 절차는 다음과 같습니다. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼냅니다. 나머지 인쇄 대기목록에서 J보다 중요도가 높은 문서가 한 개라도 존재하면 J를 대기목록의 가장 마지막에 넣습니다. 그렇지 않으면 J를 인쇄합니다. 문서가 모두 인쇄될 때까지 반복합니다. 이를 코틀린 코드로 표현하면 .. 더보기
[프로그래머스] 기능 개발 #코틀린 #kotlin #스택 #stack #level2 https://programmers.co.kr/learn/courses/30/lessons/42586?language=kotlin 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 풀이 다음의 규칙을 따라 코드를 작성해봅시다. `(100 - 현재 진행률) / 진행 속도`로 남은 기간을 계산합니다. (소수점이 생길 경우 올림) 첫 번째 남은 일을 스택에 집어넣습니다. 이때 (남은 기간, counter) 형식으로 집어넣습니다. 남은 기간을 순회하며 stack top과 비교하여 남은 기간이 더 작은 경우 co.. 더보기
[프로그래머스] 위장 #코틀린 #kotlin #hash #level2 https://programmers.co.kr/learn/courses/30/lessons/42578?language=kotlin 코딩테스트 연습 - 위장 programmers.co.kr 풀이 옷을 입는 방법의 수는 (종류 1 옷의 수) * (종류 2 옷의 수) * ...입니다. 해당 종류의 옷이 존재하지 않으면 고려하지 않습니다. 스파이는 하루에 최소 한 개의 의상은 입으므로, 아무 것도 안 입는 경우의 수를 하나 제거합니다. 안경만 입거나 하긴 한다는 거네... 변태. class Solution { fun solution(clothes: Array) = clothes.groupBy { (_, type) -> type }.values .fold(1) { acc, v -> acc * (v.size + 1.. 더보기
[프로그래머스] 베스트앨범 #코틀린 #kotlin #hash #level3 https://programmers.co.kr/learn/courses/30/lessons/42579?language=kotlin 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 풀이 문제에서 하라는대로 해봅시다. 먼저, 곡을 장르 별로 구분합니다. plays.withIndex().groupBy { genres[it.index] } zip() 메소드를 사용해도 좋겠지만, 이후에 노래의 고유 번호가 필요하므로, withIndex() 메소드를 사용하여 index를 사용해 plays와 genres를 매칭시킵니다... 더보기
[프로그래머스] 순위 #파이썬 #그래프 #Floyd-Warshall #Level3 https://programmers.co.kr/learn/courses/30/lessons/49191 코딩테스트 연습 - 순위 5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2 programmers.co.kr n명의 권투선수가 권투 대회에 참여했고 각각 1번부터 n번까지 번호를 받았습니다. 권투 경기는 1대1 방식으로 진행이 되고, 만약 A 선수가 B 선수보다 실력이 좋다면 A 선수는 B 선수를 항상 이깁니다. 심판은 주어진 경기 결과를 가지고 선수들의 순위를 매기려 합니다. 하지만 몇몇 경기 결과를 분실하여 정확하게 순위를 매길 수 없습니다. 선수의 수 n, 경기 결과를 담은 2차원 배열 results가 매개변수로 주어질 때 정확하게 순위를 매길 수 있는 선수의 수를 re.. 더보기
[프로그래머스] 숫자 게임 #파이썬 #정렬 #Greedy [Summer/Winter Coding(~2018)] https://programmers.co.kr/learn/courses/30/lessons/12987 코딩테스트 연습 - 숫자 게임 xx 회사의 2xN명의 사원들은 N명씩 두 팀으로 나눠 숫자 게임을 하려고 합니다. 두 개의 팀을 각각 A팀과 B팀이라고 하겠습니다. 숫자 게임의 규칙은 다음과 같습니다. 먼저 모든 사원이 무작위로 programmers.co.kr 문제 설명 xx 회사의 2xN명의 사원들은 N명씩 두 팀으로 나눠 숫자 게임을 하려고 합니다. 두 개의 팀을 각각 A팀과 B팀이라고 하겠습니다. 숫자 게임의 규칙은 다음과 같습니다. 먼저 모든 사원이 무작위로 자연수를 하나씩 부여받습니다. 각 사원은 딱 한 번씩 경기를 합니다. 각 경기당 A팀에서 한 사원이, B팀에서 한 사원이 나와 서로의 수를 .. 더보기
[프로그래머스] 경주로 건설 #파이썬 #python #BFS [2020 카카오 인턴십] https://programmers.co.kr/learn/courses/30/lessons/67259 코딩테스트 연습 - 경주로 건설 [[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,1,0,0,0,1],[0,0,1,0,0,0,1,0],[0,1,0,0,0,1,0,0],[1,0,0,0,0,0,0,0]] 3800 [[0,0,1,0],[0,0,0,0],[0,1,0,1],[1,0,0,0]] 2100 [[0,0,0,0,0,0],[0,1,1,1,1,0],[0,0,1,0,0,0],[1,0,0,1,0,1],[ programmers.co.kr 문제 설명 건설회사의 설계사인 죠르디는 고객사로부터 자동차 경주로 건설에 필요한 견적을.. 더보기
[프로그래머스] 징검다리 건너기 #python3 #이진탐색 binary search [2019 카카오 개발자 겨울 인턴십] https://programmers.co.kr/learn/courses/30/lessons/64062 코딩테스트 연습 - 징검다리 건너기 [2, 4, 5, 3, 2, 1, 4, 2, 5, 1] 3 3 programmers.co.kr [본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문제입니다.] 카카오 초등학교의 "니니즈 친구들"이 "라이언" 선생님과 함께 가을 소풍을 가는 중에 징검다리가 있는 개울을 만나서 건너편으로 건너려고 합니다. "라이언" 선생님은 "니니즈 친구들"이 무사히 징검다리를 건널 수 있도록 다음과 같이 규칙을 만들었습니다. 징검다리는 일렬로 놓여 있고 각 징검다리의 디딤돌에는 모두 숫자가 적혀 있으며 디딤돌의 숫자는 한 번 밟을 때마다 1씩 줄어듭니다. 디딤돌의 숫자가 0이 되면 .. 더보기

반응형