Задание было, написать программу и распараллелить ее, само задание звучит так : Циклическим сдвигом строки 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;
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как сделать, что бы картинки располагались как на примере
ссылка на codepen Как убрать hover эффекты с помощью скрипта на экранах меньше 992px?
Хотела реализовать следующий функционал: слева располагается статичная и всегда открытая карта, которая позволяет выбирать дату и подсвечивать...