fork download
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. int main() {
  6. std::string newDes = "1111P1P";
  7. size_t start = 0, end, count;
  8. while ((start = newDes.find('1', start)) != std::string::npos)
  9. {
  10. if ((end = newDes.find_first_not_of('1', start+1)) == std::string::npos)
  11. end = newDes.size();
  12. count = end - start;
  13. std::string replacement = std::to_string(count);
  14. newDes.replace(start, count, replacement);
  15. start += replacement.size();
  16. }
  17. std::cout << newDes;
  18. return 0;
  19. }
Success #stdin #stdout 0s 5516KB
stdin
Standard input is empty
stdout
4P1P