python高级练习题:下一个较高值#3【难度:4级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶_景越的博客-程序员秘密

技术标签: Python编程习题答案  python面试题库和答案  算法  性能  编程基础上  python编程练习  

python高级练习题:下一个较高值#3【难度:4级】:

我们定义了一个整数n的

阶乘数字和

,

 FDS(n)的

,化合物由数字

 D1D2D3 ... DK 

,`因为它如下:


FDS(N)= D1! + D2! + D! + ... + DK!

让我们来计算这个功能

 N = 3732的价值为

例如.:


FDS(3732)= 3! + 7! + 3! + 2! = 1 * 2 * 3 + 1 * 2 * 3 * 4 * 5 * 6 * 7 + 1 * 2 * 3 + 1×2 = 6 + 5040 + 6 + 2 = 5054.

一个数的逐行阶乘数字Sum``N,PFDS(N),是FDS(的)所有可以与正形成,从它的最左边位的任何的数字的总和它的其他数字.

因此,我们在上面具有的PFDS()对于相同数目的值是:


PFDS(3732)= FDS(3)+ FDS(37)+ FDS(373)+ FDS(3732)= 6 + 5046 + 5052 + 5054 = 15158

这个习题任务:给定的某两个整数Nk,是找到最接近整数N,让我们将其命名为’nf,有一个比N`更多位数,具有相同的** 数字根(位数相同总和,DR)**,以其在非严格递增顺序位(见下面的注释)中,用:


PFDS(NF)<地板(PDFS(N)/ k)的

让我们来看一个例子:


N = 8970#(DR = 24,用四位数字)
K = 15

与五个数字(一个数位比8970以上)与他们的数字总和的数目等于24是为了在第一列中,与PFDS的其相应的值:


与DR NUMS = 24个PFDS(NUM)PFDS(8970)
11499 1088721 1260001
11589 443889 1260001
11679 375129 1260001
11688 123129 1260001
11778 65529 1260001 <--- 65529 * 15 <1260001

所以,NF = 11778

如果给定的数n不能产生具有多一个位的数字或不存在的值,缬氨酸,PFDS,使得:VAL

编程目标:

def find_next_higherIII(n,k):
    # your code here
    return nf


测试样例:

@test.describe('Example Tests')
def example_tests():
    @test.it('Some tests fpr fixed values of n and k')
    def example_test_case():
        test.assert_equals(find_next_higherIII(3732,10),11256)
        test.assert_equals(find_next_higherIII(3732,20),11355)
        test.assert_equals(find_next_higherIII(8970,15),11778)
        test.assert_equals(find_next_higherIII(8970,30),12777)
        test.assert_equals(find_next_higherIII(9999,15),67788)
        test.assert_equals(find_next_higherIII(11111,3),-1)


最佳答案(多种解法):

点击查看答案

更多关联题目:

python进阶练习题:纸牌屋【难度:2级】–景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
python基础练习题:这些动物都以一两【难度:1级】–景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶

交流讨论:

Python基础训练营景越Python基础训练营QQ群
在这里插入图片描述
欢迎各位同学加群讨论,一起学习,共同成长!

免责申明:

本博客所有编程题目及答案均收集自互联网,主要用于供网友学习参考,如有侵犯你的权益请联系管理员及时删除,谢谢
题目收集至https://www.codewars.com/
https://www.codewars.com/kata/next-higher-value-number-3

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/aumtopsale/article/details/102452117

智能推荐

《算法笔记》——笔记_Derait的博客-程序员秘密

算法笔记胡凡 曾磊 主编机械工业出版社文章目录算法笔记C/C++快速入门提醒memsetsscanf与sprintf引用浮点数的比较圆周率复杂度黑盒测试入门篇(1)——入门模拟入门篇(2)——算法初步排序冒泡排序选择排序插入排序sort函数的应用排名的实现散列字符串hash初步递归分治递归全排列n皇后问题贪心简单贪心B1023 组个最小数 (20 分)区间贪心二分二分查找二分法拓展快速幂two pointers什么是two pointers归并排序快速排序其他高效技巧和算法打表活用递推随机选择算法

spring学习笔记(二):通过 IOC 容器创建对象_秋忆夏伤的博客-程序员秘密

1、创建对象:单例/多例 模式;实体类 User.java:package com.spring.demo;/** * 实体类 javabean */public class User { private int id; private String name; public int getId() { return id; }...

GBase 8c 远程数据库连接_gbase数据库连接命令_大壮十二的博客-程序员秘密

进行远程连接前,需要在部署了数据库主节点的机器上设置允许客户端访问数据库, 并配置远程连接。

PhotoShop CC 2017软件工具面板使用---仿制图章工具_ps2017图章工具遮盖怎么用_DreamBackTo的博客-程序员秘密

仿制图章工具包含了仿制图章工具和图案图章工具仿制图章工具  就是将图片中有相似的部分,但有部分被遮盖,需要用未被遮盖的部分去修补被遮盖的部分,用污点修复画笔工具又略显达不到要求图案图章工具  将系统中自带的图案,用图案图章工具显示  也可以自定图案:新建像素不大的图片,比如10px*10px,然后在此图上画简单图案,画完后点”编辑”—>”定义图案”,点击确定保存,然后在图案图章工具中就可以找到你绘制

Android三级缓存机制工具类的实现_峥嵘life的博客-程序员秘密

三级缓存的三级第一级是内存,最快,不需要网络第二级是本地,不需要网络第三级是网络,需要网络请求 ;

jmeter初学报错java.net.UnknownHostException_一小只蚂蚱的博客-程序员秘密

报错:Response code: Non HTTP response code: java.net.UnknownHostExceptionResponse message: Non HTTP response message: www.baidu.com: nodename nor servname provided, or not known解决方法:勾选Run Threa...

随便推点

SpringBoot实现自定义包扫描_springboot自定义扫描包_长沙郭富城的博客-程序员秘密

SpringBoot实现自定义包扫描最近很好奇在SpringBoot项目上加@MapperScan(basePackages = "xxx") 注解就能扫描到执行的包下面的东西。于是研究了一下Mybatis怎么实现的。大致是根据Mybatis依葫芦画瓢于是点开@MapperScan类,看到类结构如下:@Retention(RetentionPolicy.RUNTIME)@Target({...

rapidxml vtd-xml pugxml tinyxml2 性能对比,备忘_一线灵的博客-程序员秘密

一直用rapidxml, 发现vtd-xml,说是虚拟指针方式,于是比较下下性能: 测试数据:VTD提供的15M address.xml 测试环境: VS2015 release版本 测试项目: https://github.com/halx99/xmldrv3 测试结果:

安装教学包ROS-Academy-for-Beginners,出现错误,ERROR: the following packages/stacks could not have their rosdep_tanunat的博客-程序员秘密

原来步凑和命令:克隆或下载ROS-Academy-for-Beginners教学包到工作空间的/src目录下,例如 ~/catkin_ws/srccd ~/catkin_ws/srcgit clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git安装教学包所需的依赖cd ~/catkin_wsrosdep...

如何将PyCharm中的终端运行前面的PS如何修改成当前环境_pycharm的terminal更改环境_风吹落叶花飘荡的博客-程序员秘密

很多人在刚刚下载Pycharm的时候会发现终端表示环境的标识为PS,即使激活环境,在Anaconda上创建的环境也还是不变。

推荐文章

热门文章

相关标签