본문 바로가기

728x90

호우코우온치

[프로그래머스/JAVA] 고득점Kit > 탐욕법(Greedy) > 조이스틱 (by 다알쥐AI) 고득점Kit > 탐욕법(Greedy) > 조이스틱  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기조이스틱으로 알파벳 이름을 완성하세요. 맨 처음엔 A로만 이루어져 있습니다.ex) 완성해야 하는 이름이 세 글자면 AAA, 네 글자면 AAAA 조이스틱을 각 방향으로 움직이면 아래와 같습니다.▲ - 다음 알파벳▼ - 이전 알파벳 (A에서 아래쪽으로 이동하면 Z로)◀ - 커서를 왼쪽으로 이동 (첫 번째 위치에서 왼쪽으로 이동하면 마지막 문자에 커서)▶ - 커서를 오른쪽으로 이동 (마지막 위치에서 오른쪽으로 이동하면 첫 번째 문자에 커서) 예를 들어 아래의 방법으로 "JAZ"를 만들 수 있습니다.- 첫 번째 위치에서 조이스틱을 위로 9번 조작하여 J를 완성합니다.- 조이스틱을 왼쪽으.. 더보기
[프로그래머스/JAVA] 고득점Kit > 탐욕법(Greedy) > 단속카메라 (by 다알쥐AI) 고득점Kit > 탐욕법(Greedy) > 단속카메라  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기고속도로를 이동하는 모든 차량이 고속도로를 이용하면서 단속용 카메라를 한 번은 만나도록 카메라를 설치하려고 합니다. 고속도로를 이동하는 차량의 경로 routes가 매개변수로 주어질 때, 모든 차량이 한 번은 단속용 카메라를 만나도록 하려면 최소 몇 대의 카메라를 설치해야 하는지를 return 하도록 solution 함수를 완성하세요. 제한사항차량의 대수는 1대 이상 10,000대 이하입니다.routes에는 차량의 이동 경로가 포함되어 있으며 routes[i][0]에는 i번째 차량이 고속도로에 진입한 지점, routes[i][1]에는 i번째 차량이 고속도로에서 나간 지점이 적혀 .. 더보기
[프로그래머스/JAVA] 고득점Kit > 완전탐색 > 모음사전 (by 다알쥐AI) 고득점Kit > 완전탐색 > 모음사전   ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니다. 단어 하나 word가 매개변수로 주어질 때, 이 단어가 사전에서 몇 번째 단어인지 return 하도록 solution 함수를 완성해주세요. 제한사항word의 길이는 1 이상 5 이하입니다.word는 알파벳 대문자 'A', 'E', 'I', 'O', 'U'로만 이루어져 있습니다.입출력 예입출력 예 설명입출력 예 #1사전에서 첫 번째 단어는 "A"이고, 그다음은.. 더보기
[프로그래머스/JAVA] 고득점Kit > 완전탐색 > 전력망을 둘로 나누기 (by 다알쥐AI) 고득점Kit > 완전탐색 > 전력망을 둘로 나누기  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기n개의 송전탑이 전선을 통해 하나의 트리 형태로 연결되어 있습니다. 당신은 이 전선들 중 하나를 끊어서 현재의 전력망 네트워크를 2개로 분할하려고 합니다. 이때, 두 전력망이 갖게 되는 송전탑의 개수를 최대한 비슷하게 맞추고자 합니다. 송전탑의 개수 n, 그리고 전선 정보 wires가 매개변수로 주어집니다. 전선들 중 하나를 끊어서 송전탑 개수가 가능한 비슷하도록 두 전력망으로 나누었을 때, 두 전력망이 가지고 있는 송전탑 개수의 차이(절대값)를 return 하도록 solution 함수를 완성해주세요.제한사항n은 2 이상 100 이하인 자연수입니다.wires는 길이가 n-1인 정.. 더보기
[프로그래머스/JAVA] 고득점Kit > 정렬 > 가장 큰 수 (by 다알쥐AI) 고득점Kit > 정렬 > 가장 큰 수  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요.예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 수는 6210입니다.0 또는 양의 정수가 담긴 배열 numbers가 매개변수로 주어질 때, 순서를 재배치하여 만들 수 있는 가장 큰 수를 문자열로 바꾸어 return 하도록 solution 함수를 작성해주세요.제한 사항numbers의 길이는 1 이상 100,000 이하입니다.numbers의 원소는 0 이상 1,000 이하입니다.정답이 너무 클 수 있으.. 더보기
[프로그래머스/JAVA] 고득점Kit > 정렬 > K번째수 (by 다알쥐AI) 고득점Kit > 정렬 > K번째수  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다.예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다.1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다.2에서 나온 배열의 3번째 숫자는 5입니다.배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 sol.. 더보기
[프로그래머스/JAVA] 고득점Kit > 힙(Heap) > 이중우선순위큐 (by 다알쥐AI) 고득점Kit > 힙(Heap) > 이중우선순위큐  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기이중 우선순위 큐는 다음 연산을 할 수 있는 자료구조를 말합니다. 이중 우선순위 큐가 할 연산 operations가 매개변수로 주어질 때, 모든 연산을 처리한 후 큐가 비어있으면 [0,0] 비어있지 않으면 [최댓값, 최솟값]을 return 하도록 solution 함수를 구현해주세요. 제한사항operations는 길이가 1 이상 1,000,000 이하인 문자열 배열입니다.operations의 원소는 큐가 수행할 연산을 나타냅니다.원소는 “명령어 데이터” 형식으로 주어집니다.- 최댓값/최솟값을 삭제하는 연산에서 최댓값/최솟값이 둘 이상인 경우, 하나만 삭제합니다.빈 큐에 데이터를 삭제.. 더보기
[프로그래머스/JAVA] 고득점Kit > 힙(Heap) > 디스크 컨트롤러 (by 다알쥐AI) 고득점Kit > 힙(Heap) > 디스크 컨트롤러  ※ 주의 : 문제풀이 방법은 다양합니다. 참고만 해주세요 ※[문제설명]더보기하드디스크는 한 번에 하나의 작업만 수행할 수 있습니다. 디스크 컨트롤러를 구현하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 요청이 들어온 순서대로 처리하는 것입니다. 예를들어- 0ms 시점에 3ms가 소요되는 A작업 요청- 1ms 시점에 9ms가 소요되는 B작업 요청- 2ms 시점에 6ms가 소요되는 C작업 요청와 같은 요청이 들어왔습니다. 이를 그림으로 표현하면 아래와 같습니다.한 번에 하나의 요청만을 수행할 수 있기 때문에 각각의 작업을 요청받은 순서대로 처리하면 다음과 같이 처리 됩니다.- A: 3ms 시점에 작업 완료 (요청에서 종료까지 : 3ms)- B: 1.. 더보기

728x90