sotanishy's code snippets for competitive programming
View the Project on GitHub sotanishy/cp-library-cpp
#include "math/number-theory/divisor.hpp"
$n$ の約数を試し割り法で全て求める.
vector<long long> divisor(long long n)
#pragma once #include <vector> std::vector<long long> divisor(long long n) { std::vector<long long> ret1, ret2; for (long long i = 1; i * i <= n; ++i) { if (i * i == n) { ret1.push_back(i); } else if (n % i == 0) { ret1.push_back(i); ret2.push_back(n / i); } } ret1.insert(ret1.end(), ret2.rbegin(), ret2.rend()); return ret1; }
#line 2 "math/number-theory/divisor.hpp" #include <vector> std::vector<long long> divisor(long long n) { std::vector<long long> ret1, ret2; for (long long i = 1; i * i <= n; ++i) { if (i * i == n) { ret1.push_back(i); } else if (n % i == 0) { ret1.push_back(i); ret2.push_back(n / i); } } ret1.insert(ret1.end(), ret2.rbegin(), ret2.rend()); return ret1; }