수학 지식 메모

박동현·2021년 1월 22일
0

코딩을 하며서 유용하거나 알아두면 좋은 수학 관련 지식이나 공식을 메모했다.
꾸준히 업데이트 예정

최대공약수

gcd( a , 0 ) = a
gcd( a, b ) = gcd( b, a % b)

C++ 17 부터는 <numeric>헤더에 포함된 gcd() 함수 사용가능

최소공배수

lcm(a ,b) = a * b / gcd(a, b)

C++ 17 부터는 <numeric>헤더에 포함된 lcm() 함수 사용가능

순열

<algorithm> 헤더에 포함된 std::next_permutation() 함수
오름차순 정렬된 상태에서만 가능하다. 반대는 std::prev_permutation()

#include <algorithm>
#include <string>
#include <iostream>
 
int main()
{
    std::string s = "aba";
    std::sort(s.begin(), s.end());
    do {
        std::cout << s << '\n';
    } while(std::next_permutation(s.begin(), s.end()));
}
profile
엔진 프로그래머를 목표로합니다.

0개의 댓글