首页 > 试题广场 >

有限域

[编程题]有限域
  • 热度指数:1429 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解

在抽象代数中,我们学过一个关于有限域的定理:存在一个大小为q的有限域当且仅当q是某个素数p的方幂,即q=pk ,


输入描述:
第一行包含一个整数,数的范围在[1,10000]


输出描述:
输出阶数不超过
示例1

输入

1

输出

0
示例2

输入

37

输出

19

说明

当n 为 37 时,在 1-37 范围内,以下 19 个整数可以表示成某个素数的方幂:2,3,4,5,7,8,9,11,13,16,17,19,23,25,27,29,31,32,37。
头像 白伟仝
发表于 2020-07-25 18:59:22
只要找到一个质数,就从它的2次幂往答案里面加就行了,只要幂值不超过n: import java.util.*; public class Main { public static void main(String[] args) throws Exception{ Scann 展开全文
头像 bandiaoz
发表于 2024-12-26 00:55:50
解题思路 这是一道数论题目,需要计算不超过 的素数幂的个数。主要思路如下: 判断素数: 对于偶数,只需要判断2 对于奇数,只需要判断到其平方根 只需要用奇数去除 计算素数幂: 对于每个素数 ,计算其所有不超过 的幂 即计算满足 的 的个数 优化: 使用 sqrt 优化素 展开全文

问题信息

上传者:小小
难度:
14条回答 4469浏览

热门推荐

通过挑战的用户

查看代码
有限域