Witam. Wiem, że mam błąd, gdy czasami liczba do wstawienia jest dwucyfrowa. Nie umiem go jednak naprawić. Mógłby mi ktoś pomóc? Link:https://ideone.com/xtLQqd
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
int t;
string napis;
int main()
{
cin>>t;
for(int i=0; i<t; i++)
{
cin>>napis;
int dlugosc=napis.length();
char sprawdzanie;
int licznik=1;
for(int j=0; j<=dlugosc; j++)
{
if(j==dlugosc)
{
if(licznik>2)
{
int a=licznik;
stringstream ss;
ss<<a;
string str=ss.str();
napis.replace(j-licznik+1,licznik-1,str);
}
}
else
{
if(sprawdzanie==napis[j])
{
licznik++;
}
else if(licznik>2)
{
int a=licznik;
stringstream ss;
ss<<a;
string str=ss.str();
napis.replace(j-licznik+1,licznik-1,str);
int b=0;
if(a>100)
{
b=2;
}
else if(a>10)
{
b=1;
}
j=j-licznik+2+b;
dlugosc=dlugosc-licznik+2+b;
licznik=1;
}
else
{
licznik=1;
}
sprawdzanie=napis[j];
}
}
cout<<napis<<endl;
}
return 0;
}