用于查找特殊数字中的总位数的 C++ 代码

假设给定一个整数 k。如果该号码中的所有数字都相同,我们称该号码为特殊号码。例如,1、11、1111 是特殊数字。我们按 1、11、111、1111、2、22、222、2222、3、33、333、3333 等顺序计算特殊数字。我们必须找出直到 k 的特殊数字的总位数。k的值不大于10000。

因此,如果输入类似于 k = 9999,那么输出将为 90。

脚步

为了解决这个问题,我们将遵循以下步骤 -

s := convert k to string

Define an array v of size: := {0, 1, 3, 6, 10}

print(((s[0] - '0') - 1) * 10 + v[length of s])

示例

让我们看看以下实现以更好地理解 -

#include <bits/stdc++.h>

using namespace std;

#define N 100

void solve(int k) {

   string s = to_string(k);

   int v[] = {0, 1, 3, 6, 10};

   cout<< ((s[0] - '0') - 1) * 10 + v[s.length()] << endl;

}

int main() {

   int k = 9999;

   solve(k);

   return 0;

}

输入

9999
输出结果
90

以上是 用于查找特殊数字中的总位数的 C++ 代码 的全部内容, 来源链接: utcz.com/z/297388.html

回到顶部