博客
关于我
笔试题:找亲戚(Python列表全排列,找能被7整除的数)
阅读量:380 次
发布时间:2019-03-05

本文共 696 字,大约阅读时间需要 2 分钟。

全排列并检查模7余数

为了解决数字列表中的全排列问题并寻找能被7整除的数,我们可以编写一个递归函数来实现这个目标。以下是详细的实现方法:

首先,我们从输入的数字列表开始,然后使用递归的方式生成所有可能的排列组合。每次递归调用中,我们交换当前位置的数字与前一个位置的数字,以达到全排列的目的。在递归结束后,我们将所有生成的排列结果保存在一个列表中。

接下来,我们对保存的排列结果进行遍历,逐一将每个排列转换为整数,并检查它是否能被7整除。如果能被7整除,则将结果计数器加一。

最终,我们将计数器的值作为最终结果返回。

以下是完整的实现代码:

def Method(arr, p, q):    if p == q:        s.append(list(arr))    else:        for i in range(p, q):            arr[i], arr[p] = arr[p], arr[i]            Method(arr, p + 1, q)            arr[i], arr[p] = arr[p], arr[i]s = []res = 0arr = list(input().strip().split())Method(arr, 0, len(arr))for pl in s:    temp = int(''.join(pl))    if temp % 7 == 0:        res += 1print(res)

这个方法通过递归实现了全排列的生成,并对每一个排列结果进行了检查,最后统计满足条件的数的数量。

转载地址:http://bjvg.baihongyu.com/

你可能感兴趣的文章
opencv4-图像操作
查看>>
opencv5-图像混合
查看>>
opencv9-膨胀和腐蚀
查看>>
OpenCV与AI深度学习 | SAM2(Segment Anything Model 2)新一代分割一切大模型介绍与使用(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | YOLO11介绍及五大任务推理演示(目标检测,图像分割,图像分类,姿态检测,带方向目标检测)
查看>>
OpenCV与AI深度学习 | 使用Python和OpenCV实现火焰检测(附源码)
查看>>
OpenCV与AI深度学习 | 使用PyTorch进行小样本学习的图像分类
查看>>
OpenCV与AI深度学习 | 使用YOLO11实现区域内目标跟踪
查看>>
OpenCV与AI深度学习 | 使用YOLOv8做目标检测、实例分割和图像分类(包含实例操作代码)
查看>>
OpenCV与AI深度学习 | 使用单相机对已知物体进行3D位置估计
查看>>
OpenCV与AI深度学习 | 基于GAN的零缺陷样本产品表面缺陷检测
查看>>
OpenCV与AI深度学习 | 基于OpenCV和深度学习预测年龄和性别
查看>>
OpenCV与AI深度学习 | 基于Python和OpenCV将图像转为ASCII艺术效果
查看>>
OpenCV与AI深度学习 | 基于PyTorch实现Faster RCNN目标检测
查看>>
OpenCV与AI深度学习 | 基于PyTorch语义分割实现洪水识别(数据集 + 源码)
查看>>
OpenCV与AI深度学习 | 基于YOLO11的车体部件检测与分割
查看>>
OpenCV与AI深度学习 | 基于YOLOv8的停车对齐检测
查看>>
OpenCV与AI深度学习 | 基于机器视觉的磁瓦表面缺陷检测方案
查看>>
OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
查看>>
Opencv中KNN背景分割器
查看>>