Source code for submission s1201

bugs.cpp

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <math.h>
  5.  
  6. #define eatline() {while (getchar() != '\n');}
  7.  
  8. int max(int a, int b)
  9. {
  10. return a > b ? a : b;
  11. }
  12.  
  13. char riadok[2000001];
  14.  
  15. int main()
  16. {
  17. int riadkov;
  18. while (scanf("%d", &riadkov) == 1)
  19. {
  20. char bug[1001];
  21. scanf("%s", bug);
  22. eatline();
  23. for (int i = 0; i < riadkov; i++)
  24. {
  25.  
  26.  
  27. int bugLen = strlen(bug);
  28.  
  29. gets(riadok);
  30.  
  31.  
  32. char * first;
  33. int offset = 0;
  34. while (first = strstr(riadok + offset, bug))
  35. {
  36. offset = max(first - riadok - bugLen, 0);
  37. // memcpy(riadok + first, riadok + first + bugLen, 2000001 - (first - riadok));
  38. strcpy(first, first + bugLen);
  39. }
  40. puts(riadok);
  41. }
  42.  
  43. }
  44. return 0;
  45. }
  46.