在 C++ 中查找第 M 个数字,其数字的重复和为 N
在这个问题中,我们给定两个正数 N 和 M。我们的任务是 *查找第 M 个数字,其数字的重复和为 N*。
问题描述:在这里,我们需要找到第 M 个数字,其数字的和直到和变为一位数等于 N。
让我们举个例子来理解这个问题,
输入:N = 4 M = 6
输出:49
解决方案方法
问题的简单解决方案是找到所有数字并计算数字和为 N 的数字,并返回第 m 个数字。
解决问题的另一种方法是使用公式来查找数字和等于 N 的第 M 个数字,
第 M 个数字 = (m-1)*9 + N
程序说明我们解决方案的工作原理,
示例
#include <bits/stdc++.h> using namespace std; int main() { int n = 4, m = 6; int mNumber = (m - 1) * 9 + n; cout<<m<<"-th number whose repeated sum of digits of a number is "<<n<<" is "<<mNumber; return 0; }
输出
6-th number whose repeated sum of digits of a number is 4 is 49
广告