Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2016
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.36 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. const int M=1000000009;
  3. using namespace std;
  4. int main()
  5. {
  6. int n,h[5][2010],x=29,sr,s=0,dl[5],pot[5][2010],p=0,k,tab[5][2010],l=1,e=0;// sr-srodek, s-potrzebne(chyba), dl-dlugosc wyrazu, pot-tablica poteg, p-poczatek w szukaniu binarnym,k-koniec w binarnym,tab-hasze o szukanej dlugosci w binarnym,l zmienna w szukaniu binarnym
  7. // e-zmienna w szukaniu binarnym haszy
  8. string t[5];
  9. scanf("%d",&n);
  10. for(int i=1;i<=n;i++)
  11. {
  12. cin>>t[i];//wyraz
  13. dl[i]=t[i].length();// dlugosc wyrazu
  14. e=min(e,dl[i]);
  15. h[i][1]=t[i][1]-'a'+1;// hasz zerowy (29^0=1)
  16. for(int j=2;j<dl[i];j++)
  17. {
  18. h[i][j]=(h[i][j-1]+(t[i][j]-'a'+1)*x)%M;//haszowanie
  19. x=x*29;// potegi
  20. pot[i][j]=x;//tablica poteg dla danego hasza
  21. }
  22. }
  23.  
  24. while(s==1)
  25. {
  26.  
  27. k=e;//koniec we wzorze sr=(p+k)/2
  28. sr=(p+k)/2;//początek szukania binarnego
  29.  
  30. for (int i=1;i<=n;i++)
  31. {
  32. tab[i][0]=h[i][sr];//pierwszy wyraz to hasz od 0 do sr czyli h[i][sr]
  33. for(int j=sr+1;j<=dl[i];j++)
  34. {
  35.  
  36. tab[i][l]=h[i][l]-h[i][j];//hasze o szukanej dlugosci
  37. //CO ZROBIC DALEJ? (JAK UZYC TEGO GLUPIEGO SORTU ORAZ JAKIE DAC WARUNKI W WHILE ZE KIEDY MA SIE KONCZYC) POMOC PLIIIIIIIIIIS
  38. }
  39. }
  40.  
  41.  
  42.  
  43.  
  44.  
  45. }
  46.  
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement