Source code for submission s1249

Go to diff to previous submission

bugs.cpp

  1. #include <cstdio>
  2. #include <cstdlib>
  3. #include <iostream>
  4. #include <cstring>
  5.  
  6.  
  7. using namespace std;
  8.  
  9.  
  10. int main()
  11. {
  12. int n, len, ii;
  13. string s;
  14. char line[2000000];
  15. char * o;
  16. while (cin >> n >> s)
  17. {
  18. getchar();
  19. for (int i=1; i<=n; i++)
  20. {
  21. ii=0;
  22. do {
  23. line[ii++] = getchar();
  24. } while (line[ii-1] !='\n');
  25. line[ii-1] = 0;
  26. len = ii;
  27. while ((o = strstr(line, s.c_str()))) {
  28. while (o < line+len-1)
  29. {
  30. o++;
  31. o[-1] = o[s.length()-1];
  32. }
  33. o[0] = 0;
  34. len -= s.length();
  35. };
  36. cout << line << endl;
  37. }
  38. }
  39.  
  40. return 0;
  41. }
  42.  

Diff to submission s1150

bugs.cpp

--- c4.s1150.cteam045.bugs.cpp.0.bugs.cpp
+++ c4.s1249.cteam045.bugs.cpp.0.bugs.cpp
@@ -10,5 +10,5 @@
 int main()
 {
-        int n, len;
+        int n, len, ii;
         string s;
         char line[2000000];
@@ -16,9 +16,13 @@
         while (cin >> n >> s)
         {
-                cin.getline(line, 100);
+                getchar();
                 for (int i=1; i<=n; i++)
                 {
-                        cin.getline(line, 2000000);
-                        len = strlen(line);
+                        ii=0;
+                        do {
+                                line[ii++] = getchar();
+                        } while (line[ii-1] !='\n');
+                        line[ii-1] = 0;
+                        len = ii;
                         while ((o = strstr(line, s.c_str()))) {
                                 while (o < line+len-1)