UVa 294 (因数的个数) Divisors

news/2024/2/22 19:31:19

题意:

求区间[L, U]的正因数的个数。

分析:

有这样一条公式,将n分解为,则n的正因数的个数为

事先打好素数表,按照上面的公式统计出最大值即可。

 1 #include <cstdio>
 2 #include <cmath>
 3 
 4 const int maxn = 31700;
 5 bool vis[maxn + 10];
 6 int prime[3450], cnt = 0;
 7 
 8 void Init()
 9 {
10     int m = sqrt(maxn + 0.5);
11     for(int i = 2; i <= m; ++i) if(!vis[i])
12         for(int j = i * i; j <= maxn; j += i) vis[j] = true;
13     for(int i = 2; i <= maxn; ++i) if(!vis[i]) prime[cnt++] = i;
14 }
15 
16 int factor_number(int n)
17 {
18     int m = sqrt(n + 0.5);
19     int ans = 1;
20     for(int i = 0; prime[i] <= m; ++i)
21     {
22         int k = 1;
23         while(n % prime[i] == 0)
24         {
25             k++;
26             n /= prime[i];
27         }
28         ans *= k;
29     }
30     if(n > 1) ans <<= 1;
31     return ans;
32 }
33 
34 int main()
35 {
36     Init();
37     int a, b, T;
38     scanf("%d", &T);
39     while(T--)
40     {
41         scanf("%d%d", &a, &b);
42         int ans, temp = 0;
43         for(int i = a; i <= b; ++i)
44         {
45             int k = factor_number(i);
46             if(k > temp) { temp = k; ans = i; }
47         }
48         printf("Between %d and %d, %d has a maximum of %d divisors.\n", a, b, ans, temp);
49     }
50 
51     return 0;
52 }
代码君

 

转载于:https://www.cnblogs.com/AOQNRMGYXLMV/p/4207818.html


https://dhexx.cn/news/show-16887.html

相关文章

uft自动化测试工具安装步骤_2020年十大最佳自动化测试工具

Best Automation Testing Tools for 2020对更快交付高质量软件(或"快速质量")的需求要求组织以敏捷&#xff0c;持续集成(CI)和DevOps方法论来寻找解决方案。测试自动化是这些方面的重要组成部分。最新的《 2018-2019年世界质量报告》表明&#xff0c;测试自动化是实…

hive 取消打印日志信息_Hive为什么这么受欢迎?来看Hive架构以及应用介绍

Hive究竟是什么&#xff0c;为什么在Hadoop家族中占有这么重要的地位&#xff0c;本篇文章将围绕Hive的体系结构(架构)、Hive的操作、Hive与Hbase的区别等对Hive进行全方面的阐述。作者&#xff1a;Python工程师Hive这个框架在Hadoop的生态体系结构中占有及其重要的地位&#x…

【百度地图API】如何批量转换为百度经纬度

【百度地图API】如何批量转换为百度经纬度 原文:【百度地图API】如何批量转换为百度经纬度摘要&#xff1a; 百度地图API的官网上提供了常用坐标转换的示例。但是&#xff0c;一次只能转换一个&#xff0c;真的非常麻烦&#xff01;&#xff01;这里结合了官方的示例&#xff0…

getprocaddress得到为0_TensorFlow从0到1 - 15 - 重新思考神经网络初始化

上一篇14 交叉熵损失函数——克服学习缓慢从最优化算法层面入手&#xff0c;将二次的均方误差&#xff08;MSE&#xff09;更换为交叉熵作为损失函数&#xff0c;避免了当出现“严重错误”时导致的学习缓慢。本篇引入1/sqrt(nin)权重初始化方法&#xff0c;从另一个层面——参数…

类的组合在什么情况下使用_什么情况下使用切片防草布?切片防草布都有什么规格呢...

防草布(园艺地布)是整卷的布状物&#xff0c;通常幅宽为0.5--2米&#xff0c;卷长为100米--800米&#xff0c;在使用时只需要将防草布展开平铺即可。但是有些情况之下不适合使用整卷的防草布&#xff0c;而人工裁剪费时费力对原材料(防草布)还有很大的损耗&#xff0c;自己剪裁…

python seaborn_【Python可视化3】Seaborn之箱线图与小提琴图

Seaborn是基于matplotlib的Python可视化库。它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matplotlib的基础上进行了更高级的API封装&#xff0c;从而使得作图更加容易&#xff0c;不需要经过大量的调整就能使你的图变得精致。但应强调的是&#xff0c;应该把…

python二维图颜色函数_Python绘图之二维图与三维图详解

各位工程师累了吗? 推荐一篇可以让你技术能力达到出神入化的网站"持久男" 1.二维绘图 a. 一维数据集 用 Numpy ndarray 作为数据传入 ply 1. import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt np.random.seed(1000) y np.random.stan…

大熊君大话NodeJS之------MongoDB模块(额外篇)

一&#xff0c;开篇分析 这篇属于扩展知识篇&#xff0c;因为在下面的文章中会用到数据库操作&#xff0c;所以今天就来说说它&#xff08;Mongodb模块&#xff09;。 &#xff08;1&#xff09;&#xff0c;简介 MongoDB是一个基于分布式文件存储的数据库。由C语言编写。旨在为…

php如何配置gii,从零开始学YII2框架(五)快速生成代码工具 Gii 的使用

Yii2 框架 之所以称之为高效快速开发的一款框架&#xff0c;是因为有一个神奇的工具Gii用过Yii1框架的Coder都知道&#xff0c;Gii可以为你快速生成代码&#xff0c;也就是说搭建一个可以增删改查的WebApp可能一行代码都不用写。当然作为Coder&#xff0c;不写代码怎么能实现我…

Java 集合系列15之 Set架构

http://www.cnblogs.com/skywang12345/p/3311136.htmlJava 集合系列15之 Set架构前面&#xff0c;我们已经系统的对List和Map进行了学习。接下来&#xff0c;我们开始可以学习Set。相信经过Map的了解之后&#xff0c;学习Set会容易很多。毕竟&#xff0c;Set的实现类都是基于Ma…