알고리즘
-
프로그래머스 - 제일 작은 수 제거하기알고리즘 2022. 4. 20.
import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; public class P_11 { // 제일 작은 수 제거 public int[] sol(int[] arr) { int[] ans = new int[arr.length]; if(arr.length Collections 클래스의 min() 메소드 이용하기 위해서 Integer 타입의 Arraylist를 만든다. -> 만든 Arraylist에 인수로 받아온 arr 배열을 넣는다. (향상된 for문 사용) -> 리스트에서 제일 작은 수를 구한다. (Collections.min() 사용) -> remove() 메소드를 이용해서 제일 작은 수를 지운다. -> 매개변..
-
프로그래머스 - 최대공약수와 최소공배수알고리즘 2022. 1. 31.
내 풀이 - 자바 class Solution { public int[] solution(int n, int m) { int [] answer = new int[2]; answer[0] = gcd(n, m); answer[1] = (n*m) / answer[0]; return answer; } public static int gcd(int a, int b) { if(b == 0) { return a; } else { return gcd(b, a%b); } } } 최대공약수(gcd) 최소공배수(lcm) 을 구하기 위해서 유클리드 호제법 알고리즘을 사용했다. (재귀 호출 사용) 최대공약수 GCD(Greatest Common Divisor) 최대공약수는 두 자연수의 공통된 약수 중 가장 큰 수를 의미한다. ex..
-
프로그래머스 - 피보나치 수알고리즘 2022. 1. 26.
내 풀이 - 자바 (이건 n번째 피보나치 수를 구하는 코드) import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class test01 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); int f[] = new int[n+1]; for(int i=0; i
-
프로그래머스 - 하샤드 수알고리즘 2022. 1. 25.
내 풀이 - 파이썬 def solution(x): answer_sum = sum(map(int, str(x))) # if x % answer_sum == 0: # answer = True # else: # answer = False answer = True if x % answer_sum == 0 else False return answer solution(10) 하샤드 수를 구하기 위해서 내가 알아야 하는 2개의 값은 매개 변수 x = 이건 이미 주어지니까 패스 각 자리수의 합 = 이걸 구하기 위해서 map의 sum 기능을 활용 그리고 마지막으로 if else 문이나 if else 삼항식으로 조건으로 True False 검사를 하면 된다. 다른 사람 풀이 공부 - 파이썬 def Harshad(n): #..
-
프로그래머스 - 핸드폰 번호 가리기알고리즘 2022. 1. 25.
내 풀이 - 파이썬 def solution(phone_number): answerLen = len(phone_number) answer1 = len(phone_number[0:answerLen-4]) answer2 = phone_number[-4:] answer = answer1 * "*" + answer2 return answer 문자열 자르기와 문자열 합치기만 할 줄 안다면 쉬웠던 문제 다른 사람 풀이 공부 - 파이썬 def hide_numbers(s): return "*"*(len(s)-4) + s[-4:] # 아래는 테스트로 출력해 보기 위한 코드입니다. print("결과 : " + hide_numbers('01033334444')); return에서 한방에 한줄로 끝낸 모습 파이썬의 자동 형변환..