#include #include #include using namespace std; int fastPower(int a, int b) { if (b==0) return 1; if (a==0) return 0; if (b%2==0) { return fastPower(a*a, b/2); } else if (b%2==1) { return a*fastPower(a*a,b/2); } return 0; } int parseHelper(char *data,int len,int num) { if (len == strlen(data)) return num/10; int digit = -('0'-data[len]); if (digit > 9) return num/10; // yavno simvolut tuk ne e cifra -> prekratqvame num+= digit; return parseHelper(data,len+1,num*10); } int parseInt(char *data) { return parseHelper(data,0,0); } int mutiplyWithDigit(int a, int b,int num) { if (b==0) return num; return mutiplyWithDigit(a,b-1,num+a); } int multiply(int a,int b) { return (mutiplyWithDigit(a,b%10,0) + 10*mutiplyWithDigit(a,b/10,0)); } int main (void) { srand ( time(NULL) ); int a = rand()%100; int b = rand()%100; cout<< parseInt("343211asd")<