C++中约数定理的实例详解

发布时间 - 2026-01-11 02:14:46    点击率:

C++中约数定理的实例详解

对于一个大于1正整数n可以分解质因数:n = p1^a1*p2^a2*......pk^ak,则n的正约数的个数就是  :(a1+1)*(a2+1)*......*(ak+1)

其中a1、a2、a3…ak是p1、p2、p3,…pk的指数。

用这个定理求一个数的约数个数是非常快的,贴出一道训练题目:

hdu 1492 -求约数的个数

贴出代码:

//约数定理的 
#include <iostream> 
#include <algorithm> 
#include <iterator> 
#include <cstdio> 
#include <cstdlib> 
#include <cmath> 
#include <cstring> 
#include <vector> 
#include <queue> 
#include <set> 
using namespace std; 
 
#define ll long long 
 
int main() 
{ 
  // freopen("s.cpp","r",stdin); 
 
  ll n; 
  while(scanf("%lld",&n) != EOF) 
  { 
    if(!n) break; 
 
    ll sum = 1; 
    /* x = p1^a1*p2^a2*p3^a3...pk^ak 
    yueshu = (a1+1)*(a2+1)*...*(ak+1)*/ 
    for(ll i = 2; i*i <= n; i++){ 
      int cou = 0; 
      if(n%i==0){ 
        cou = 1; 
        n /= i; 
        while(n%i==0){ 
          cou++; 
          n /= i; 
        } 
      } 
      if(cou != 0){ 
        sum = sum*(cou+1); 
      } 
    } 
    if(n != 1){ 
      sum = sum*2; 
    } 
    if(sum==1 && n==1){ 
      sum = 1; 
    } 
    printf("%lld\n",sum); 
  } 
  return 0; 
} 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# C++中约数定理  # C++  # 约数定理的详解  # 约数定理  # C++提取文件中信息的方法  # 详解C++的String类的字符串分割实现  # C++ 自定义栈实现迷宫求解  # C/C++ 双链表之逆序的实例详解  # C++ 中assert()函数用法总结  # C++中的菱形继承深入分析  # C++类中的继承实例详解  # C++ 线程(串行 并行 同步 异步)详解  # 贴出  # 希望能  # 谢谢大家  # 正整数  # hdu  # pre  # color  # ff  # include  # lt  # iostream  # class  # brush  # cpp  # style  # pk  # ak  # strong  # span  # nbsp 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 青岛网站建设如何选择本地服务器?  javascript中对象的定义、使用以及对象和原型链操作小结  Windows10电脑怎么设置虚拟光驱_Win10右键装载ISO镜像文件  Python正则表达式进阶教程_复杂匹配与分组替换解析  EditPlus中的正则表达式实战(6)  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  Laravel如何实现数据库事务?(DB Facade示例)  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】  如何快速查询网址的建站时间与历史轨迹?  js实现获取鼠标当前的位置  如何在服务器上配置二级域名建站?  Laravel如何实现用户注册和登录?(Auth脚手架指南)  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  QQ浏览器网页版登录入口 个人中心在线进入  如何在景安服务器上快速搭建个人网站?  Laravel如何使用模型观察者?(Observer代码示例)  奇安信“盘古石”团队突破 iOS 26.1 提权  怎样使用JSON进行数据交换_它有什么限制  如何用狗爹虚拟主机快速搭建网站?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  Laravel如何实现API资源集合?(Resource Collection教程)  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  如何快速搭建FTP站点实现文件共享?  EditPlus中的正则表达式 实战(2)  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何使用 jQuery 正确渲染 Instagram 风格的标签列表  JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)  如何快速搭建二级域名独立网站?  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】  高防服务器租用如何选择配置与防御等级?  JS经典正则表达式笔试题汇总  php json中文编码为null的解决办法  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  佛山网站制作系统,佛山企业变更地址网上办理步骤?  ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】  如何确认建站备案号应放置的具体位置?  活动邀请函制作网站有哪些,活动邀请函文案?  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  C#如何调用原生C++ COM对象详解