VvyLw's Library

This documentation is automatically generated by online-judge-tools/verification-helper

View the Project on GitHub

:warning: 約数列挙
(C++/math/divisor.hpp)

Code

#pragma once

#include <vector>
#include <algorithm>
namespace man {
template <std::integral T> inline std::vector<T> div(const T n) noexcept {
    std::vector<T> d;
    for(long long i = 1; i * i <= n; ++i) {
        if(n % i == 0) {
            d.emplace_back(i);
            if(i * i != n) {
                d.emplace_back(n / i);
            }
        }
    }
    std::ranges::sort(d);
    return d;
}
}

/**
 * @brief 約数列挙
 */
#line 2 "C++/math/divisor.hpp"

#include <vector>
#include <algorithm>
namespace man {
template <std::integral T> inline std::vector<T> div(const T n) noexcept {
    std::vector<T> d;
    for(long long i = 1; i * i <= n; ++i) {
        if(n % i == 0) {
            d.emplace_back(i);
            if(i * i != n) {
                d.emplace_back(n / i);
            }
        }
    }
    std::ranges::sort(d);
    return d;
}
}

/**
 * @brief 約数列挙
 */
Back to top page