用C++编写的由M个数字组成的N位数中能被5整除的数字

用c++编写的由m个数字组成的n位数中能被5整除的数字

我们给出了一个数字 N 以及一个由 M 位数字组成的数组。我们的工作是找到n个数由给定的 M 位数字组成的可被 5 整除的数字。

让我们看一些示例来理解问题的输入和输出。

In –

N = 2M = 3arr = {5, 6, 3}

登录后复制

出局 –

2

登录后复制

有 2 N 个数字 35 和 65 可能被 5 整除。让我们看另一个例子。

输入 –

立即学习“C++免费学习笔记(深入)”;

N = 1M = 7arr = {2, 3, 4, 5, 6, 7, 8}

登录后复制

输出-

1

登录后复制

给定数组中只有 1 个 1 位数字可以被 5 整除。因此,我们的任务是找到给定的 N 个数字可以被 5 整除的数字的个数。

数字必须以数字 0 或 5 结尾才能被 5 整除。让我们看看算法

算法

检查对于给定数组中的 0 和 5。 2. 如果同时存在 0 和 5,则有两种方法将数字放入个位。否则,将有一种放置数字的方法。将计数初始化为 2。现在,剩余的位置可以有 m – 1、m – 2, m – 3, … n 种分别填充它们的方法。编写一个从 0 迭代到 n – 1 的循环。减少数组。将其与计数相乘。如果有单个数字 0 或 5,则有只有一种方法可以将数字放入个位。将计数初始化为 2。现在,剩余的位置可以有 m – 1、m – 2 , m – 3, … n 种分别填充它们的方法。编写一个从 0 迭代到 n – 1 的循环。减少数组。将其与计数相乘。如果没有数字 0 或 5,则我们可以形成一个能被5整除的数字。此时返回-1。

实现

以下是上述算法的C++实现

#include using namespace std;int numbers(int n, int m, int arr[]) {   bool isZeroPresent = false, isFivePresent = false;   int numbersCount = 0;   if (m 

输出

如果运行上面的代码,您将得到以下结果。

2

登录后复制

以上就是用C++编写的由M个数字组成的N位数中能被5整除的数字的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2584186.html

(0)
上一篇 2025年3月6日 14:45:24
下一篇 2025年3月6日 14:45:31

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论