当前位置: 首页 > news >正文

python-区间内的真素数(赛氪OJ)

[题目描述]
找出正整数 M 和 N 之间(N 不小于 M)的所有真素数。
真素数的定义:如果一个正整数 P 为素数,且其反序也为素数,那么 P 就为真素数。
例如,11,13 均为真素数,因为 11 的反序还是为 11,13 的反序为 31 也为素数。
输入:
输入两个数 M 和 N,空格间隔。
输出:
按从小到大输出 M 和 N 之间(包括 M 和 N)的真素数,逗号间隔。如果之间没有真素数,则输出 No。
样例输入1
10 35

样例输出1
11,13,17,31

提示:
1≤M≤N≤100000
来源/分类(难度系数:一星)


完整代码展示:
a,b=map(int,input().split())
c=[]
for i in range(a,b+1):
      l=2
      m=int(pow(i,0.5))
      while l<=m:
              if i%l==0:
                  break
             l+=1
      if l>m and i>=2:
          d=list(str(i))
          d.reverse()
          sum=""
          for j in range(0,len(d)):
               sum+=d[j]
          sum=eval(sum)
          x=2
          y=int(pow(sum,0.5))
          while x<=y:
                  if sum%x==0:
                       break
                  x+=1
         if x>y:
              c.append(i)
if len(c)==0:
    print("No")
else:
    for k in range(0,len(c)-1):
          print(c[k],end=",")
    print(c[-1])


代码解释:
a,b=map(int,input().split())
 c=[]                                         
”,让用户输入限定求解区间的两个数值a,b。建立一个空列表c。
for i in range(a,b+1):
        l=2
        m=int(pow(i,0.5))
        while l<=m:
                if i%l==0:
                    break
               l+=1
               ”,根据素数(质数)的定义,遍历a到b区间内的所有数值,查找符合条件的数值。
if l>m and i>=2:
       d=list(str(i))
       d.reverse()
       sum=""
       for j in range(0,len(d)):
             sum+=d[j]
       sum=eval(sum)
       x=2
       y=int(pow(sum,0.5))
       while x<=y:
               if sum%x==0:
                    break
              x+=1
       if x>y:
            c.append(i)
            ”,如果该数值为质数,则将它转换为字符串并储存进列表d中。接着反转列表d,建立一个空字符串sum,让sum从左到右依次连接列表d中所有元素组成新的字符串sum。连接完成后,将新的字符串sum由字符串转换为可计算的数值,并按照质数的定义判断其是否为质数。如果是,则将其添加进列表c中。
if len(c)==0:
      print("No")
 else:
        for k in range(0,len(c)-1):
              print(c[k],end=",")
        print(c[-1])
                          ”,遍历结束后,判断列表c是否为空。如果是,则输出”No”;否则遍历列表c,从左至右依次打印列表c中所有元素,每两个元素之间插入一个逗号(末尾不插入)。


运行效果展示:

d0f21f394501487f86d7cbd637c69cba.jpg

8597bab72dfb427282e1f5804cfb7b06.jpg 

             (声明:以上内容均为原创) 

http://www.lryc.cn/news/401408.html

相关文章:

  • TCP/IP、UDP、HTTP 协议介绍比较和总结
  • Unity Meta Quest 开发:如何在每只手指上添加 Poke 交互
  • MyBatis的原理?
  • 数学基础【俗说矩阵】:齐次线性方程和非齐次线性方程求解-学习笔记
  • 乐尚代驾项目概述
  • 脱发的 7 个原因,不能再瞒着大家了!
  • Vim使用教程
  • 前端开发体系+html文件详解
  • 小程序中用于跳转页面的5个api是什么和区别
  • 翁恺-C语言程序设计-10-0. 说反话
  • langchain 入门指南(二)- 如何跟大模型对话
  • [集成学习]基于python的Stacking分类模型的客户购买意愿分类预测
  • FastApi地理坐标数据存取实践
  • Docker容器——初识Docker,安装以及了解操作命令
  • JavaSE从零开始到精通
  • 求解答word图标变白
  • Jenkins 离线升级
  • Unty 崩溃问题(Burst 1.8.2)
  • 【大型实战】企业网络实验(华为核心交换、ESXI7.0vmware虚拟机、DHCP中继、服务端网络及用户端网络配置)
  • vue2路由跳转是异步的
  • 第一阶段面试题总结
  • 设计模式(工厂模式,模板方法模式,单例模式)
  • ES6 对象的新增方法(十四)
  • Spring Boot 学习总结(34)—— spring-boot-starter-xxx 和 xxx-spring-boot-starter 区别?
  • 昇思训练营打卡第二十五天(RNN实现情感分类)
  • 昇思25天学习打卡营第02天|张量 Tensor
  • 权威认可 | 海云安开发者安全助手系统通过信通院支撑产品功能认证并荣获信通院2024年数据安全体系建设优秀案例
  • 24.7.10|暑假-数组题目:实现整数的数字反转【学习记录】
  • 【ceph】ceph集群-添加/删除mon
  • Django ORM中的Q对象