题目

梦梦有一个正整数 n,现在它可以在数字的开头或结尾或中间插入一个数字(0 到 9 任意一个) ,请问能生成多少种不同的(不含前导零的)数字?

样例

限制

MyCode

#include <bits/stdc++.h>
using namespace std;
#define ll long long;
#define endl '\n';
int main(){
	ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    string num;
    cin >> num;
    freopen("game.in","r",stdin);
    freopen("game.out","w",stdout);
    set<std::string> unique_numbers;
    int len = num.length();
    for (int i = 0; i <= len; ++i) {
        for (int digit = 0; digit <= 9; ++digit) { 
            string new_num = num;
            new_num.insert(i, std::to_string(digit));
            if (new_num[0] != '0') {
                unique_numbers.insert(new_num);
            }
        }
    }
    cout  << unique_numbers.size() << '\n';
    return 0;
    //
}

样例100%AC,但是测试点一个没过

1 条评论

  • 1