用於查詢特殊數中數字總數的 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

更新於: 11-Mar-2022

765 次瀏覽

開始您的 職業

透過完成課程獲得認證

開始
廣告
© . All rights reserved.