본문 바로가기

java59

유클리드 호제법 - 최대공약수, 유한소수 판별하기 들어가기최근 코딩테스트를 풀면서, 약수, 소인수분해, 소수, 최대공약수 ...등등 수학에 대한 내용들을 많이 접해왔다. 특히 최대공약수를 구하는 부분이 성가셔서 한 번 정리해보려고 한다. 유클리드 호제법 두 양의 정수 a, b (a > b)에 대하여 a = bq + r (0 ≤ r 이라 하면, a, b의 최대공약수는 b, r의 최대공약수와 같다. 즉,gcd⁡(a, b) = gcd⁡(b, r)r=0이라면, a,b의 최대공약수는 b가 된다. r은 나머지를 뜻한다. 결론적으로, a와 b의 최대공약수는 b와 a, b의 나머지인 r의 최대공약수와 같다는 것이다. 이를 코드로 구현해보면 아래와 같다.// 최대공약수(GCD) 함수 (유클리드 호제법) private static int getGCD(int a,.. 2025. 5. 6.
코딩테스트 입문 - Day 21 숨어있는 숫자의 덧셈 (2)class Solution { public int solution(String my_string) { StringBuilder sb = new StringBuilder(); int answer = 0; for(int i =0;i안전지대class Solution { int answer = 0; int [] di = {-1,-1,-1,0,1,1,1,0}; int [] dj = {-1,0,1,-1,-1,0,1,1}; public int solution(int[][] board) { for(int i = 0; i = 0 && pi = 0 && pj 삼각형의 완성 조건 (2)class Solution { .. 2025. 5. 5.
코딩테스트 입문 - Day 20 직사각형 넓이 구하기class Solution { public int solution(int[][] dots) { int answer = 0; int o[] = dots[0]; for(int i = 1; i캐릭터의 좌표class Solution { public int[] solution(String[] keyinput, int[] board) { int[] answer = new int[2]; int boundw = board[0] /2; int boundh = board[1] /2; for(String move : keyinput){ switch(move){ .. 2025. 5. 5.
코딩테스트 입문 - Day 19 7의 개수class Solution { public int solution(int[] array) { int cnt = 0; for(int n : array){ String s = n+""; cnt += s.length() - s.replace("7","").length(); } return cnt; }}잘라서 배열로 저장하기import java.util.*;class Solution { public List solution(String my_str, int n) { ArrayList answer = new ArrayList(); int i = 0; while(tr.. 2025. 5. 5.
코딩테스트 입문 - Day 18 문자열안에 문자열class Solution { public int solution(String str1, String str2) { if(str1.contains(str2)){ return 1; } return 2; }}제곱수 판별하기import java.util.*;class Solution { public int solution(int n) { int sq = (int)Math.sqrt(n); int pow = (int) Math.pow((double)sq,2.0); if(n == pow){ return 1; } return 2; }}세균 증.. 2025. 4. 27.
코딩테스트 입문 - Day 17 숫자 찾기class Solution { public int solution(int num, int k) { String s = String.valueOf(num); String k1 = String.valueOf(k); int n = s.indexOf(k1); if(n == -1){ return -1; } return n+1; }}n의 배수 고르기import java.util.*;class Solution { public List solution(int n, int[] numlist) { List arr = new ArrayList(); for(int num : numlis.. 2025. 4. 27.
728x90
반응형