#include "math/divisor_list.hpp"
#pragma once /** * @brief 約数列挙 */ template<typename T> auto divisor_list(T n){ vector<T>res; for(int i=1;i<=sqrt(n);i++){ if(n%i)continue; res.push_back(i); if(i*i!=n)res.push_back(n/i); } sort(res.begin(),res.end()); return res; }
#line 2 "math/divisor_list.hpp" /** * @brief 約数列挙 */ template<typename T> auto divisor_list(T n){ vector<T>res; for(int i=1;i<=sqrt(n);i++){ if(n%i)continue; res.push_back(i); if(i*i!=n)res.push_back(n/i); } sort(res.begin(),res.end()); return res; }