#include <bits/stdc++.h>
using namespace std;
string compress(string s)
{
if (s.size() == 0)
{
return “”;
}
char ch = s[0];
int i = 1;
while (i < s.size() && s[i] == ch)
{
i++;
}
string ros = s.substr(i);
ros = compress(ros);
string charCount = to_string(i);
return ch + charCount + ros;
}
int main()
{
string s;
cin >> s;
cout << compress(s) << endl;
return 0;
}
please explain .
my code is
#include
#include
#include
using namespace std;
int main()
{
string s;
getline(cin,s);
int l=s.length();
int sum=1;
for(int i=0,j=1;i<l,j<=l;i++,j++)
{
if(s[i]==s[j])
{
sum++;
}
else if(s[i]!=s[j])
{
cout<<s[i];
cout<<sum;
sum=1;
}
else
{
cout<<s[i];
cout<<sum;
}
}
return 0;
}