Question :- https://leetcode.com/problems/multiply-strings/
#include<bits/stdc++.h>
using namespace std;
void go(char digit,string num,vector<int>& vec,int& last){
int end = num.size()-1;
int j = last;
int carry = 0;
for(int i=end;i>=0;i--){
int res = ((digit-'0')*(num[i]-'0'))+carry;
vec[j]+=res;
carry = vec[j]/10;
vec[j]%=10;
j--;
}while(carry){
vec[j]+=carry;
carry = vec[j]/10;
vec[j]%=10;
j--;
}last--;
}int main(){
string num1 = "456";
string num2 = "9";
int m = 1000001;
vector<int> vec(m,0);
int last = m-1;
int end = num1.size()-1;
for(int i=end;i>=0;i--){
go(num1[i],num2,vec,last);
}int i=0;
while(!vec[i]){
i++;
}for(int j=i;j<m;j++){
cout<<vec[j];
}return 0;
}