mamamaria

SubsTr

Feb 10th, 2021 (edited)
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. #include <ctime>
  3. using namespace std;
  4. //На вход программы случайная строка, состоящая из n бит.Написать программу, вычисляющую оценку вероятности того,
  5. //что в этой строке есть точно две одинаковых непересекающихся подстроки длины m;
  6.  
  7. const int n=15; const int m = 4;
  8.  
  9. void genStr(int mas[], int l) {
  10.     for (int i = 0; i < l; i++)
  11.         mas[i] = rand() % 2;
  12. }
  13. void output(int str[], int l) {
  14.     for (int i = 0; i < l; i++) {
  15.         cout << str[i];
  16.     }
  17. }
  18. int main()
  19. {
  20.     int str[n]; int subStr[m]; bool check = true; int counter = 0, gcounter = 0;
  21.     genStr(str,n);
  22.     genStr(subStr,m);
  23.     output(str,n); cout << endl; output(subStr,m);
  24.  
  25.     for (int i = 0; i < n-m; i++) {
  26.         for (int j = 0; j < m; j++) {
  27.             if (subStr[j] == str[j + i]) {
  28.                 check = true;
  29.             }
  30.             else {
  31.                 if (check == true) gcounter++;
  32.                 check = false;
  33.                 break;
  34.             }
  35.         }
  36.     }
  37.     cout << endl;
  38.     cout << gcounter;
  39.     cout << endl;
  40.  
  41. }
Add Comment
Please, Sign In to add comment