코딩 테스트/알고리즘 공부
수학적 지식 모음
fullfish
2022. 9. 8. 14:34
제곱근이 정수면 약수의 개수가 홀수이며
제곱근이 정수가 아니면 약수의 개수가 짝수다
자연수 n을 만들 수 있는 연속된 숫자의 합의 개수는
n의 약수중 홀수의 개수이다
(n이 15라면 1+2+3+4+5, 4+5+6, 7+8, 15 약수는 1,3,5,15)
// 짝수의 합
const half = ~~(n/2);
return half*(half+1);
삼각형의 두 변의 길이가 주어 졌을때 -> [a,b]
나머지 변의 길이가 될 수 있는 정수의 개수는
Math.min(...[a,b]) * 2 - 1
분자와 분모의 최대공약수로 약분하면 기약분수.
기약분수일때 분모의 소인수가 2와 5뿐이면 유한소수.
n개 연속된 정수의 합으로 sum을 만들 수 있을때
연속된 정수 배열 구하기
function solution(n, sum) {
var min = Math.ceil(sum / n - ~~(n / 2))
var max = ~~(sum / n + ~~(n / 2))
let result = []
for (let i = min; i <= max; i++) {
result.push(i)
}
return result
}