fork(3) download
  1. #include <iostream>
  2. #include <sstream>
  3. #include <string>
  4. using namespace std;
  5. int t;
  6. string napis;
  7. int main()
  8. {
  9. cin>>t;
  10. for(int i=0; i<t; i++)
  11. {
  12. cin>>napis;
  13. int dlugosc=napis.length();
  14. char sprawdzanie;
  15. int licznik=1;
  16. for(int j=0; j<=dlugosc; j++)
  17. {
  18. if(j==dlugosc)
  19. {
  20. if(licznik>2)
  21. {
  22. int a=licznik;
  23. stringstream ss;
  24. ss<<a;
  25. string str=ss.str();
  26. napis.replace(j-licznik+1,licznik-1,str);
  27.  
  28. }
  29. }
  30. else
  31. {
  32. if(sprawdzanie==napis[j])
  33. {
  34. licznik++;
  35. }
  36. else if(licznik>2)
  37. {
  38. int a=licznik;
  39. stringstream ss;
  40. ss<<a;
  41. string str=ss.str();
  42. napis.replace(j-licznik+1,licznik-1,str);
  43. int b=0;
  44. if(a>100)
  45. {
  46. b=2;
  47. }
  48. else if(a>10)
  49. {
  50. b=1;
  51. }
  52. j=j-licznik+2+b;
  53. dlugosc=dlugosc-licznik+2+b;
  54. licznik=1;
  55. }
  56. else
  57. {
  58. licznik=1;
  59. }
  60. sprawdzanie=napis[j];
  61. }
  62. }
  63.  
  64. cout<<napis<<endl;
  65. }
  66.  
  67. return 0;
  68. }
  69.  
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
Standard output is empty