VioletaBabel

수학 및 논리 퍼즐 본문

백준/백준-C++
수학 및 논리 퍼즐
Beabletoet 2017. 9. 13. 15:23

소수


모든 자연수는 소수의 곱으로 나타낼 수 있다.

x = 2^j0 * 3^j1 * 5^j2 * 7^j3 * 11^j4 * 13^j5 * 17^j6 …



--

소수의 가분성(divisibility)


x = 2^j0 * 3^j1 * 5^j2 * 7^j3 * 11^j4 * 13^j5 * 17^j6 …

y = 2^k0 * 3^k1 * 5^k2 * 7^k3 * 11^k4 * 13^k5 * 17^k6 …


gcd = greatest common divisor = 최대공약수

gcd(x,y) = 2^min(j0,k0) * 3^min(j1,k1) * 5^min(j2,k2) ...


lcm = least common multiple = 최소공배수

lcm(x,y) = 2^max(j0,k0) * 3^max(j1,k1) * 5^max(j2,k2) ...


gcd(x,y)*lcm(x,y) = x*y



--

소수판별

에라토스테네스의 체 (max는 따로 define함)

1
2
3
4
5
6
7
8
9
10
void eratosthenes(bool *num)
{
    fill(&num[0],&num[max],1);
    for (int i = 4; i <= max; i += 2)
        num[i] = 0;
    for (int i = 3; i*<= max; i += 2)
        if (num[i] == 1)
            for (int j = i*i; j <= max; j += 2 * i)
                num[j] = 0;
}
cs



--

A∩B의 확률

P(A∩B) = P(B|A)P(A) = (P(B∩A)/P(A))*P(A)



--

A∪B의 확률

P(A∪B) = P(A)+P(B)-P(A∩B)



'백준 > 백준-C++' 카테고리의 다른 글

재귀와 동적 프로그래밍  (0) 2017.09.13
1149번: RGB거리  (0) 2017.09.13
9461번: 파도반 수열  (0) 2017.09.08
10448번: 유레카 이론  (0) 2017.09.08
10158번: 개미  (0) 2017.09.08
Comments