Advertisement
Guest User

Untitled

a guest
Mar 25th, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.60 KB | None | 0 0
  1.  
  2. #include <iostream>
  3. using namespace std;
  4.  
  5. int sprawdzRozmiar(char slowo[]) {
  6.         int rozmiar=0;
  7.         while (*slowo != '\0') {
  8.                 rozmiar++;
  9.                 slowo++;
  10.         }
  11.         return rozmiar-1;
  12.  
  13. }
  14. bool identycznosc(int x, int r1, char s1[], char s2[]) {
  15.         for (int i = 0; i < r1; i++) {
  16.                 if (s2[x + i] != s1[i]) {
  17.                         return false;
  18.                 }
  19.         }
  20.         return true;
  21. }
  22.  
  23. int sprawdzPozycje(char s1[], char s2[], int r1, int r2) {
  24.         int a = 0;
  25.         int *pomoc = new int[r2];
  26.         int p;
  27.         int  c = 0;
  28.         int licznik = 1;
  29.         bool wskaznik;
  30.         for (int i = 0; i < r2; i++) {
  31.  
  32.                 if (s2[i] == s1[0]) {
  33.                         pomoc[a] = i;
  34.                         a++;
  35.                 }
  36.         }
  37.  
  38.         for (int j = 0; j < a; j++) {
  39.                 p = pomoc[j];
  40.                 wskaznik = identycznosc(p, r1, s1, s2);
  41.                 if (wskaznik == true) {
  42.                         return p;
  43.                 }
  44.         }
  45.         return 0;
  46. }
  47.  
  48. int main()
  49. {
  50.        
  51.         char *slowo1 = new char[100000000];
  52.         char *slowo2 = new char[100000000];
  53.         int r1;
  54.         int r2;
  55.         int wynik;
  56.  
  57.         fgets(slowo1, 100000000, stdin);
  58.         fgets(slowo2, 100000000, stdin);
  59.  
  60.         r1=sprawdzRozmiar(slowo1);
  61.         r2 = sprawdzRozmiar(slowo2);
  62.  
  63.         wynik=sprawdzPozycje(slowo1,slowo2,r1,r2);
  64.         if (wynik == 0)
  65.                 return 0;
  66.         else
  67.                 cout << wynik;
  68.  
  69.  
  70.     return 0;
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement