본문 바로가기

프로그래머스34

[프로그래머스] 코딩테스트 입문 : 배열의 평균값 | 문제정수 배열 numbers가 매개변수로 주어집니다. numbers 원소의 평균값을 return 하도록 solution 함수를 완성해주세요.| 제한 사항0 ≤  numbers의 원소 ≤  10001 ≤  numbers의 길이 ≤  100정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다.| 입출력 예numbersresult{1,2,3,4,5,6,7,8,9,10}5.5{89,90,91,92,93,94,95,96,97,98,99}94.0| 풀이public double solution(int[] numbers) { double sum = 0; for(int num : numbers){ sum += num; } return sum/numbers.length;}|.. 2024. 8. 30.
[프로그래머스] 코딩테스트 입문 : 피자 나눠 먹기(3) | 문제머쓱이네 피자 가게는 피자를 두 조각에서 열 조각까지 원하는 조각 수로 잘라줍니다.피자 조각 수 slice와 피자를 먹는 사람의 수 n이 매개변수로 주어질 때,n명의 사람이 최소 한 조각 이상 피자를 먹으려면 최소 몇 판의 피자를 시켜야 하는지를return 하도록 solution 함수를 완성해 보세요.| 제한 사항2 ≤  n ≤  101 ≤  n ≤  100 | 입출력 예slicenresult71024123| 풀이 1public int solution01(int slice, int n) { int answer = 1; while(slice * answer | 풀이 2public int solution(int slice,int n) { return n % slice > 0 ? n /.. 2024. 8. 29.
[프로그래머스] 코딩테스트 입문 : 피자 나눠 먹기(2) | 문제머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다.피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때,n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해 보세요.| 제한 사항1 ≤  n ≤  100| 입출력 예nresult6110542| 풀이 1public int solution01(int n) { int a = n; int b = 6; int temp = 0; while(b != 0) { temp = a % b; a = b; b = temp; } return n/a;}| 풀이 2public int solution01(i.. 2024. 8. 29.
[프로그래머스] 코딩테스트 입문 : 피자 나눠 먹기(1) | 문제머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다.피자를 나눠먹을 사람의 수 n이 주어질 때,모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해 보세요.| 제한 사항1 ≤  n ≤  100| 입출력 예nresult7111153| 풀이 1public int solution01(int n) { int answer = 0; if(n % 7 == 0){ answer = n / 7; } else{ answer = n/7 +1; } return answer;} | 풀이 2public int solution02(int n) { int answer = n % 7 == 0 ? n/7 : n/7.. 2024. 8. 29.
[프로그래머스] 코딩테스트 입문 : 짝수는 싫어요. | 문제정수 n이 매개변수로 주어질 때, n이하의 홀수가 오름차순으로 담긴 배열을 return하도록solution 함수를 완성해주세요.| 제한 사항1 ≤  n ≤  100| 입출력 예nresult10[1,3,5,7,9]15[1,3,5,7,8,11,13,15]| 풀이 1public int[] solution01(int n) { int[] answer = {}; int len = n % 2 == 0 ? n/2 : n/2+1; answer = new int[len]; int s = 1; for(int i = 0 ; i | 풀이 2public List solution02(int n) { List answer = new ArrayList(); int i = 1; whil.. 2024. 8. 28.
[프로그래머스] 코딩테스트 입문 : 최빈값 구하기 | 문제최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다.정수 배열 array가 매개변수로 주어질 때, 최빈값을 return하도록 solution함수를 완성해 보세요.최빈값이 여러 개면 -1을 return합니다.| 제한 사항0 0 ≤ array의 원소 | 입출력 예arrayresult[1, 2, 3, 3, 3, 4]3[1, 1, 2, 2]-1[1]1| 풀이 1본질에 집중하다 보니 정말 많이 복잡한 로직이 나왔습니다.1000 미만의 값만 매개변수로 주어지는 배열의 값으로 사용된다고 해서1000 크기를 가지는 배열을 구성했습니다.그리고, 해당 배열의 인덱스를 마치 원소의 값처럼 사용했어요.매개변수 배열 안에 있는 각 숫자값을 꺼내와서1000짜리 배열에 개수를 반영해 주었습니다.public int .. 2024. 8. 28.
[프로그래머스] 코딩테스트 입문 : 중앙값 구하기 | 문제중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때가장 중앙에 위치하는 값을 의미합니다.예를 들어 1,2,7,10,11의 중앙값은 7입니다.정수 배열 array가 매개변수로 주어질 때,중앙값을 return하도록 solution 함수를 완성해 보세요.| 제한 사항array의 길이는 홀수입니다.0 -1000 | 입출력 예arrayresult[1, 2, 7, 10, 11]7[9, -1, 0]0| 풀이 1배열을 오름차순으로 정렬한 다음 가운데 있는 값을 return 했습니다.public int solution01(int[] array) { for(int i = 0 ; i array[j]){ int temp = array[i]; array[i] = array[j]; array[j] .. 2024. 8. 28.
[프로그래머스] 코딩테스트 입문 : 나머지 구하기 | 문제정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 나머지를 return 하도록 solution 함수를 완성해 주세요.| 제한사항0 0 | 입출력 예num1num2result3211050| 풀이1public int solution01(int num1, int num2) { int answer = -1; answer = num1 % num2; return answer;}| 풀이2public int solution02(int num1, int num2) { return num1 % num2;}| 풀이3public int solution03(int num1, int num2) { while(num1 >= num2) { num1 = num1.. 2024. 8. 27.
[프로그래머스] 코딩테스트 입문 : 배열 두배 만들기 | 문제정수 배열numbers가 매개변수로 주어집니다.numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요.| 제한사항-10,000 ≤ numbers의 원소 ≤ 10,0001 ≤ numbers의 길이 ≤ 1,000| 입출력 예numersresult[1, 2, 3, 4, 5][2, 4, 6, 8, 10][1, 2, 100, -99, 1, 2, 3][2, 4, 200, -198, 2, 4, 6]| 풀이1public int[] solution01(int[] numbers) { int[] answer = new int[numbers.length]; for(int i = 0 ; i | 풀이2public List solution02(int[] numb.. 2024. 8. 27.