Задание было, написать программу и распараллелить ее, само задание звучит так : Циклическим сдвигом строки s называется строка sksk+1sk+2…s|s|s1s2…sk-1 для некоторого k, здесь |s| - длина строки s. Подстрокой строки s называется строка sisi+1…sj-1sj для некоторых i и j. Вам даны две строки a и b. Выведите количество подстрок строки a, являющихся циклическими сдвигами строки b.
Входные данные Первая строка входного файла INPUT.TXT содержит строку a (1 ≤ |a| ≤ 1000). Во второй строке входного файла записана строка b (1 ≤ |b| ≤ min(100,|a|)). Обе строки состоят только из символов английского алфавита и цифр.
Выходные данные В выходной файл OUTPUT.TXT выведите целое число – ответ на задачу. Программу я написал, но распараллелить не смог,аргументируя ,что дана последовательность, которую если разбив то можно потерять пару c, сказали,что я не прав и что можно распараллелить , подскажите как это можно реализовать
#include<iostream>
include
include
using namespace std;
string cs(string s) {
if (s.size())
s = (s + s[0]).erase(0, 1);
return s;
}
int f(string s, string t) {
string q;
q = s;
int k = 0, i = 0, j;
do {
do {
j = t.find(s, i);
if (j == string::npos)
i = 0;
else {
k++;
i = j + 1;
}
} while (i);
s = cs(s);
} while (s != q);
return k;
}
int main() {
ifstream in("input.txt");
ofstream out("output.txt");
string t, s;
in >> t >> s;
int k ;
k = f(s,t);
cout << k;
out << k;
out.close();
return 0;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как сделать, что бы картинки располагались как на примере
ссылка на codepen Как убрать hover эффекты с помощью скрипта на экранах меньше 992px?
Хотела реализовать следующий функционал: слева располагается статичная и всегда открытая карта, которая позволяет выбирать дату и подсвечивать...