C#,纽曼-尚克斯-威廉士素数(Newman Shanks Williams prime)的算法与源代码

news2024/10/6 14:25:03

1 NSW素数

素数是纽曼-尚克斯-威廉士素数(Newman-Shanks-Williams prime,简写为NSW素数)当且仅当它能写成以下的形式:

1981年M. Newman、D. Shanks和H. C. Williams在研究有限集合时,率先描述了NSW素数。

首几个NSW素数为7,41, 239, 9369319, 63018038201, ...,对应指数3, 5, 7, 19, 29, ...

上式中的S可用递归的方法定义,虽然得出来的未必是素数:

S0 = 1S1 = 1Sn = 2Sn - 1 + Sn - 2对于所有这个数列的首几项为1, 1, 3, 7,17, 41,99。这些数亦出现在以连分数表示的√2。

 计算结果:

 计算纽曼-尚克斯-威廉士素数的源程序(内含三种算法):

2 文本格式源程序

using System;

namespace Legalsoft.Truffer.Algorithm
{
    public static partial class Number_Sequence
    {
        public static int Newman_Shanks_Williams_Prime(int n)
        {
            if (n == 0 || n == 1)
            {
                return 1;
            }
            return (2 * Newman_Shanks_Williams_Prime(n - 1) + Newman_Shanks_Williams_Prime(n - 2));
        }

        public static int Newman_Shanks_Williams_Prime_Second(int n)
        {
            int[] dp = new int[n + 1];
            dp[0] = dp[1] = 1;
            for (int i = 2; i <= n; i++)
            {
                dp[i] = 2 * dp[i - 1] + dp[i - 2];
            }
            return dp[n];
        }

        public static int Newman_Shanks_Williams_Prime_Third(int n)
        {
            if (n == 0 || n == 1)
            {
                return 1;
            }
            int a = 1;
            int b = 1;
            for (int i = 2; i <= n; ++i)
            {
                int c = 2 * b + a;
                a = b;
                b = c;
            }
            return b;
        }
    }
}
 

————————————————————

POWER BY TRUFFER.CN 50018.COM

3 代码格式

 

using System;

namespace Legalsoft.Truffer.Algorithm
{
    public static partial class Number_Sequence
    {
        public static int Newman_Shanks_Williams_Prime(int n)
        {
            if (n == 0 || n == 1)
            {
                return 1;
            }
            return (2 * Newman_Shanks_Williams_Prime(n - 1) + Newman_Shanks_Williams_Prime(n - 2));
        }

        public static int Newman_Shanks_Williams_Prime_Second(int n)
        {
            int[] dp = new int[n + 1];
            dp[0] = dp[1] = 1;
            for (int i = 2; i <= n; i++)
            {
                dp[i] = 2 * dp[i - 1] + dp[i - 2];
            }
            return dp[n];
        }

        public static int Newman_Shanks_Williams_Prime_Third(int n)
        {
            if (n == 0 || n == 1)
            {
                return 1;
            }
            int a = 1;
            int b = 1;
            for (int i = 2; i <= n; ++i)
            {
                int c = 2 * b + a;
                a = b;
                b = c;
            }
            return b;
        }
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1435977.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【经典例子】Java实现2048小游戏(附带源码)

一、游戏回顾 2048游戏是一款数字益智游戏&#xff0c;目标是通过合并相同数字的方块来达到2048这个目标。游戏在一个4x4的方格上进行&#xff0c;每个方格上都有一个数字&#xff08;初始时为2或4&#xff09;。玩家可以通过滑动方向键&#xff08;上、下、左、右&#xff09;…

Java实现用户画像活动推荐系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 兴趣标签模块2.3 活动档案模块2.4 活动报名模块2.5 活动留言模块 三、系统设计3.1 用例设计3.2 业务流程设计3.3 数据流程设计3.4 E-R图设计 四、系统展示五、核心代码5.1 查询兴趣标签5.2 查询活动推荐…

升级GPT4保姆级教程

前言&#xff1a; 2024-01-26开通了GPT4之后至今已经使用了两周&#xff0c;体验下来是真的强&#xff0c;各种GPTs使用起来也很丝滑&#xff0c;不需要自己额外调试。之前看版本计划&#xff0c;2024年会发布GPT5&#xff0c;如果你还没有用上GPT4的话快快来升级体验一下吧&a…

C语言之自定义类型:联合和枚举

目录 1. 联合体类型的声明2. 联合体的特点3. 联合体大小的计算联合的一个练习 4. 枚举类型的声明5. 枚举类型的优点6. 枚举类型的使用 1. 联合体类型的声明 像结构体一样&#xff0c;联合体也是由一个或者多个成员构成&#xff0c;这些成员可以不同的类型 但是编译器只为最大…

机器学习系列4-特征工程

机器学习系列4-特征工程 学习内容来自&#xff1a;谷歌ai学习 https://developers.google.cn/machine-learning/crash-course/framing/check-your-understanding?hlzh-cn 本文作为学习记录自己归纳整理的思维导图 这里写目录标题 机器学习系列4-特征工程一级目录二级目录三…

Mac利用brew安装mysql并设置初始密码

前言 之前一直是在windows上开发后段程序&#xff0c;所以只在windows上装mysql。(我记得linux只需要适应yum之类的命令即可) 另外, linux的移步 linux安装mysql (详细步骤,初次初始化,sql小例子,可视化操作客户端推荐) 好家伙&#xff0c;我佛了&#xff0c;写完当天网上发…

集群clickhouse使用和clickhouse索引的使用

ClickHouse支持多种索引类型&#xff0c;包括普通索引、范围索引、哈希索引、倒排索引等。使用索引可以加快查询速度和提高查询效率。下面是ClickHouse索引的一些使用方法&#xff1a; 1 普通索引 可以使用普通索引来加速查询特定的列&#xff0c;例如&#xff1a; CREATE TA…

MES生产制造管理:汽车零部件生产MES解决方案

某某汽车部件科技有限公司是一家铝合金零部件研发、压铸和精加工为一体的高新技术企业,拥有先进压铸、机加、检测等设备,并配套自动化生产线。为解决发动机支架等产品的全程生产质量追溯和实现机台设备联网,梅施科技提供了车间级的MES解决方案,如图所示&#xff1a; 梅施科技采…

Axios设置token到请求头的三种方式

1、为什么要携带token? 用户登录时&#xff0c;后端会返回一个token&#xff0c;并且保存到浏览器的localstorage中&#xff0c;可以根据localstorage中的token判断用户是否登录&#xff0c;登录后才有权限访问相关的页面&#xff0c;所以当发送请求时&#xff0c;都要携带to…

每日一题——LeetCode1408.数组中的字符串匹配

方法一 暴力枚举&#xff1a; 对每个单词循环判断是否是其他单词的子字符串 var stringMatching function(words) {const ret [];for (let i 0; i < words.length; i) {for (let j 0; j < words.length; j) {if (i ! j && words[j].search(words[i]) ! -1)…

探索Gin框架:Golang Gin框架请求参数的获取

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站https://www.captainbed.cn/kitie。 前言 我们在专栏的前面几篇文章内讲解了Gin框架的路由配置&#xff0c;服务启动等内容。 专栏地址&…

TS项目实战二:网页计算器

使用ts实现网页计算器工具&#xff0c;实现计算器相关功能&#xff0c;使用tsify进行项目编译&#xff0c;引入Browserify实现web界面中直接使用模块加载服务。   源码下载&#xff1a;点击下载 讲解视频 TS实战项目四&#xff1a;计算器项目创建 TS实战项目五&#xff1a;B…

Unity3D判断屏幕中某个坐标点的位置是否在指定UI区域内

系列文章目录 unity工具 文章目录 系列文章目录前言一、使用rect.Contains()判断1-1、转换坐标1-2、代码如下&#xff1a;1-3、注意事项1-3、测试效果如下 二、使用坐标计算在不在区域内2-1、方法如下&#xff1a;2-2、注意事项 三、使用RectTransformUtility.ScreenPointToLo…

[每日一题] 02.06 - ABC

ABC lis list(map(int,input().split())) ABC list(input()) lis.sort() dic {A:lis[0],B:lis[1],C:lis[2]} res print(dic) for i in ABC:print(dic[i],end )我感觉没问题&#xff0c;但提交就是出问题了&#xff0c;应该不是最后多了个空格&#xff08;试过去除还是错…

股票投资指南!石家庄开通股票账户佣金最低是多少?怎么开低佣金账户?

股票投资指南可以帮助您更好地了解股票投资的基本知识和技巧&#xff0c;以便您可以做出明智的投资决策。以下是一些股票投资的基本指南&#xff1a; 了解股票市场&#xff1a;学习股票市场的基本概念和运作方式&#xff0c;包括股票交易所、股票指数和股票价格等。 定义投资目…

技术是你的安身立命之本

技术是你的安身立命之本 技术是你的安身立命之本,这句话是我父亲说的,我也一直把这句话奉为圭臬。这句话让我受用至今。 我父亲是一个两面派人士,一面是农民,一直在耕种着五亩薄田,没有像别的人家一样把田租赁出去,另一面是银行职员,勤勤恳恳在小县城的网点干了一辈子…

【AI】告别繁琐阅读,阿里通义智文阅读助手带您轻松畅游知识海洋!

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff0c;致力于程序服务生活&#xff01; 一、阿里通义智文阅读助手简介 阿里通义智文阅读助手是一款基于人工智能技术的阅读辅助工具&#xff0c;可以帮助用户更高效地阅读和理解各种类型的文档&#xff0c;如PPT、图片和PD…

【多模态MLLMs+图像编辑】MGIE:苹果开源基于指令和大语言模型的图片编辑神器(24.02.03开源)

项目主页&#xff1a;https://mllm-ie.github.io/ 论文 :基于指令和多模态大语言模型图片编辑 2309.Guiding Instruction-based Image Editing via Multimodal Large Language Models &#xff08;加州大学圣巴拉分校苹果&#xff09; 代码&#xff1a;https://github.com/appl…

LeetCode-第2769题-找出最大的可达成数字

1.题目描述 给你两个整数 num 和 t 。 如果整数 x 可以在执行下述操作不超过 t 次的情况下变为与 num 相等&#xff0c;则称其为 可达成数字 &#xff1a; 每次操作将 x 的值增加或减少 1 &#xff0c;同时可以选择将 num 的值增加或减少 1 。 2.样例描述 3.思路描述 当 x…

第五讲 二维费用的背包问题

【题目来源】AcWing 8. 二维费用的背包问题 【题意分析】 本题在前面背包问题的基础上&#xff0c;增加了一个维度——质量&#xff0c;背包拥有了容积、承重两个限制&#xff0c;物品也有了体积、质量两种属性。 【参考资料】第一讲 0/1背包问题 与0/1背包类似&#xff0c;加…