You are on page 1of 2

int countI(string s, char c)

{
int length = s.size();
int count=0;
for (int i = 0; i < length; i++)
if (s[i] == c) count++;
return count;
}

int countR(string s, char c)


{
int length = s.size();

if (length == 0) return 0;
else if (s[length-1] == c) return countR(s.substr(0, length - 1), c)+1;
else return countR(s.substr(0, length - 1), c);
}

unsigned char findI(string s)


{
int length = s.size();
char min = s[0];
for (int i = 1; i < length ; i++)
if (min > s[i]) min = s[i];

return min;
}

char findR(string s)
{
int length = s.size();
char min=s[length-1];
if (length == 0) return 0;
else if (length==1) return s[0];
if(s[1]>s[0])s[1]=s[0];

return findR(s.substr(1, length - 1));


}

string removeI(string s)
{
int length = s.size();
for(int i=0;i<length;i++)
if(s[i]==s[i+1])
{
for(int j=i;j<length;j++)
s[j]=s[j+1];
length--;
i--;
}

return s;
}

string removeR(string s)//AAAASS


{
int length = s.size();
if(length ==0) return s;
else if(s[0]==s[1]) return removeR(s.substr(1, length-1));
else return s[0]+removeR(s.substr(1, length-1));

int TI(int m, int n)


{
int sum = 0;
if (m == 0 || n == 0)return 0;
else if (m > n)
{
for (int i = 0; i < n; i++)
sum += m;
return sum;
}
else
{
for (int i = 0; i < m; i++)
sum += n;
return sum;
}
}

int TR(int m, int n)


{
int sum = 0;
if (m == 0 || n == 0)return 0;
else if (m > n)
{
sum = m + TR(m, n - 1);
return sum;
}
else
{
sum = n + TR(m - 1, n);
return sum;
}
}

You might also like