最容易想到的最直接办法
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
int main()
{
    int num,n;
    while (cin >> num >> n) {
        string a = to_string(num),b = "",ans = "";
        for(int ii = 2;ii <= n;++ii){
            b = "";
            ans = "";
            for(int j = 1;j <= ii;++j)
                b += to_string(num);
            int len1 = a.size();
            int len2 = b.size();
            reverse(a.begin(),a.end());
            reverse(b.begin(),b.end());
            int i = 0,carry = 0;
            while (i < len1 && i < len2) {
                int cur = a[i] - '0' + b[i] - '0' + carry;
                ans += to_string(cur % 10);
                carry = cur / 10;
                i++;
            }
            if (i < len2) {
                swap(a, b);
                swap(len1, len2);
            }
            while (i < len1) {
                int cur = a[i] - '0' + carry;
                ans += to_string(cur % 10);
                carry = cur / 10;
                i++;
            }
            if (carry)
                ans += to_string(carry);
            reverse(ans.begin(), ans.end());
            a = ans;
        }
        if(ans.size() == 0)
            ans = a;
        cout << ans << endl;
    }
}