분류 전체보기 (470) 썸네일형 리스트형 [프로그래머스(Java)] 외계행성의 나이 Level. 0 문제 우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb로 표현합니다. 나이 age가 매개변수로 주어질 때 PROGRAMMER-962식 나이를 return하도록 solution 함수를 완성해주세요. * 제한사항 - age는 자연수입니다. - age ≤ 1,000 - PROGRAMMERS-962 행성은 알파벳 소문자만 사용합니다. 풀이. 1 class Solution { public String solution(int age) { Strin.. [프로그래머스(Java)] l로 만들기 / Stream, replaceAll(),정규식 Level. 0 문제 알파벳 소문자로 이루어진 문자열 myString이 주어집니다. 알파벳 순서에서 "l"보다 앞서는 모든 문자를 "l"로 바꾼 문자열을 return 하는 solution 함수를 완성해 주세요. * 제한사항 - 1 ≤ myString ≤ 100,000 - myString은 알파벳 소문자로 이루어진 문자열입니다. 풀이. 1 - Stream import java.util.*; import java.util.stream.Collectors; class Solution { public String solution(String myString) { return Arrays.stream(myString.split("")) .map(i->(i.compareTo("l") [프로그래머스] 두 큐 합 같게 만들기 / 투포인터 알고리즘 Level. 2 문제 길이가 같은 두 개의 큐가 주어집니다. 하나의 큐를 골라 원소를 추출(pop)하고, 추출된 원소를 다른 큐에 집어넣는(insert) 작업을 통해 각 큐의 원소 합이 같도록 만들려고 합니다. 이때 필요한 작업의 최소 횟수를 구하고자 합니다. 한 번의 pop과 한 번의 insert를 합쳐서 작업을 1회 수행한 것으로 간주합니다. 큐는 먼저 집어넣은 원소가 먼저 나오는 구조입니다. 이 문제에서는 큐를 배열로 표현하며, 원소가 배열 앞쪽에 있을수록 먼저 집어넣은 원소임을 의미합니다. 즉, pop을 하면 배열의 첫 번째 원소가 추출되며, insert를 하면 배열의 끝에 원소가 추가됩니다. 예를 들어 큐 [1, 2, 3, 4]가 주어졌을 때, pop을 하면 맨 앞에 있는 원소 1이 추출되어 [.. [프로그래머스(Java)] 약수 구하기 / mapToInt() Level. 0 문제 정수 n이 매개변수로 주어질 때, n의 약수를 오름차순으로 담은 배열을 return하도록 solution 함수를 완성해주세요. * 제한사항 - 1 ≤ n ≤ 10,000 풀이. 1 import java.util.stream.*; class Solution { public int[] solution(int n) { return IntStream.rangeClosed(1, n) .filter(i -> n%i == 0) .toArray(); } } 풀이. 2 import java.util.List; import java.util.ArrayList; class Solution { public int[] solution(int n) { List answer = new ArrayList(); .. [프로그래머스(Java)] 피자 나눠 먹기 (2) / 유클리드 호재법 Level. 0 문제 머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요. * 제한사항 - 1 ≤ n ≤ 100 풀이 class Solution { int gcd(int a, int b){ if(a%b==0) return b; return gcd(b, a%b); } public int solution(int n) { int answer = n/gcd(Math.max(n, 6), Math.min(n, 6)); return answer; } } n과 6의 최소공배수(lcm = n1 * n2.. [프로그래머스(Java)] [PCCE 기출문제] 9번 / 이웃한 칸 Level. 1 문제 각 칸마다 색이 칠해진 2차원 격자 보드판이 있습니다. 그중 한 칸을 골랐을 때, 위, 아래, 왼쪽, 오른쪽 칸 중 같은 색깔로 칠해진 칸의 개수를 구하려고 합니다. 보드의 각 칸에 칠해진 색깔 이름이 담긴 이차원 문자열 리스트 board와 고른 칸의 위치를 나타내는 두 정수 h, w가 주어질 때 board[h][w]와 이웃한 칸들 중 같은 색으로 칠해져 있는 칸의 개수를 return 하도록 solution 함수를 완성해 주세요. 이웃한 칸들 중 몇 개의 칸이 같은 색으로 색칠되어 있는지 확인하는 과정은 다음과 같습니다. 1. 정수를 저장할 변수 n을 만들고 board의 길이를 저장합니다. 2. 같은 색으로 색칠된 칸의 개수를 저장할 변수 count를 만들고 0을 저장합니다. 3. .. [프로그래머스(Java)] 369게임 Level. 0 문제 머쓱이는 친구들과 369게임을 하고 있습니다. 369게임은 1부터 숫자를 하나씩 대며 3, 6, 9가 들어가는 숫자는 숫자 대신 3, 6, 9의 개수만큼 박수를 치는 게임입니다. 머쓱이가 말해야하는 숫자 order가 매개변수로 주어질 때, 머쓱이가 쳐야할 박수 횟수를 return 하도록 solution 함수를 완성해보세요. * 제한사항 - 1 ≤ order ≤ 1,000,000 풀이 class Solution { public int solution(int order) { int answer = 0; while(order > 0){ if(order%10!=0 && order%10%3==0) answer += 1; order /= 10; } return answer; } } 3과 6과 .. [프로그래머스(Java)] 주사위 게임 2 Level. 0 문제 1부터 6까지 숫자가 적힌 주사위가 세 개 있습니다. 세 주사위를 굴렸을 때 나온 숫자를 각각 a, b, c라고 했을 때 얻는 점수는 다음과 같습니다. 세 숫자가 모두 다르다면 a + b + c 점을 얻습니다. 세 숫자 중 어느 두 숫자는 같고 나머지 다른 숫자는 다르다면 (a + b + c) × (a2 + b2 + c2 )점을 얻습니다. 세 숫자가 모두 같다면 (a + b + c) × (a2 + b2 + c2 ) × (a3 + b3 + c3 )점을 얻습니다. 세 정수 a, b, c가 매개변수로 주어질 때, 얻는 점수를 return 하는 solution 함수를 작성해 주세요. * 제한사항 - a, b, c는 1이상 6이하의 정수입니다. 풀이. 1 import java.util.Set.. 이전 1 ··· 16 17 18 19 20 21 22 ··· 59 다음