VvyLw's Library

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

View the Project on GitHub

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

Required by

Verified with

Code

#pragma once

#include <vector>
#include <algorithm>
namespace Heileden {
template <class T> inline std::vector<T> div(const T n) {
    std::vector<T> d;
    for(int64_t 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 Heileden {
template <class T> inline std::vector<T> div(const T n) {
    std::vector<T> d;
    for(int64_t 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