-
프로그래머스 - 평균 구하기 [자바]Algorithms/- 프로그래머스 2022. 2. 17. 01:19
문제 링크 : 평균 구하기 코딩테스트 연습 - 평균 구하기 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr programmers.co.kr 정답(Solution) class Solution { public double solution(int[] arr) { double answer = 0; double sum = 0; for(int num : arr){ sum += num; } answer = sum / arr.length; return answer; } } 분석 단순사칙 연산 double 자료형 아는지 묻는 문제
-
프로그래머스 - 카카오 프렌즈 컬러링북 [자바]Algorithms/- 프로그래머스 2022. 2. 14. 22:30
문제 링크 : 카카오 프렌즈 컬러링북 코딩테스트 연습 - 카카오프렌즈 컬러링북 6 4 [[1, 1, 1, 0], [1, 2, 2, 0], [1, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 3], [0, 0, 0, 3]] [4, 5] programmers.co.kr 정답 class Solution { private int[] x = {1, -1, 0, 0}; private int[] y = {0, 0, 1, -1}; private int temp = 0; public int[] solution(int m, int n, int[][] picture) { int numberOfArea = 0; int maxSizeOfOneArea = 0; boolean[][] v = new boolean[m..
-
프로그래머스 - 최대공약수와 최소공배수 [자바]Algorithms/- 프로그래머스 2022. 2. 13. 23:35
문제 링크 : 최대공약수와 최소공배수 코딩테스트 연습 - 최대공약수와 최소공배수 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 programmers.co.kr 정답(Solution) import java.util.*; class Solution { public int[] solution(int n, int m) { int[] answer = new int[2]; answer[0] = maxSame(n, m); answer[1] = minSame(n, m); return answer; } private int maxSame(int first, int ..
-
유클리드 호제법 (최대공약수)Algorithms 2022. 2. 13. 23:21
유클리드 호제법 : 2개의 자연수 또는 정수의 최대공약수를 구하는 알고리즘이다. 서문 최대공약수와 최소공배수 코딩테스트 연습 - 최대공약수와 최소공배수 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 programmers.co.kr 위 문제의 풀이 중 최대공약수를 링크와 같이 단순 무식하게 풀었는데 최대공약수를 구하는 알고리즘이 있어서 정리한다. 유클리드 호제법 private int gcd(int a, int b){ if(b == 0){ return a; }else{ return gcd(b, a % b); } } 원리 2개의 자연수 또는 정수를 직사각..
-
프로그래머스 - 콜라츠 추측 [자바]Algorithms/- 프로그래머스 2022. 2. 12. 01:49
문제 링크 : 콜라츠 추측 코딩테스트 연습 - 콜라츠 추측 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2 programmers.co.kr 정답(Solution) class Solution { public int solution(int num) { if(num == 1){ return 0; } long n = (long) num; for(int i=0; i
-
LeetCode - Maximum Depth of Binary Tree [Java]Algorithms/- LeetCode 2022. 2. 10. 22:30
문제 링크 : Maximum Depth of Binary Tree Maximum Depth of Binary Tree - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 정답(Solution) /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { th..
-
프로그래머스 - 제일 작은 수 제거하기 [자바]Algorithms/- 프로그래머스 2022. 2. 10. 22:09
문제 링크 : 제일 작은 수 제거하기 코딩테스트 연습 - 제일 작은 수 제거하기 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1 programmers.co.kr 정답(Solution) class Solution { public int[] solution(int[] arr) { if(arr.length == 1){ return new int[]{-1}; } int[] answer = new int[arr.length - 1]; int min = Integer.MAX_VALUE; int idx = 0; for(int i=0; i
-
LeetCode - Symmetric Tree [Java]Algorithms/- LeetCode 2022. 2. 9. 21:39
문제 링크 : Symmetric Tree Symmetric Tree - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 정답(Solution) /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(i..