Анонс #258. Кратчайшее расстояние до заданного символа

Анонс #258. Кратчайшее расстояние до заданного символа

UniLecs

Задача: дана строка S и символ C, который встречается в строке S. Необходимо вернуть массив arr, где arr.Length == S.Length, arr[i] - это расстояние от индекса i до ближайшего вхождения символа C в строку S.

Входные данные: S - строка, состояющая только из строчных букв англ.алфавита a-z, размер строки от 1 до 10^4. Символ C - это также строчная буква алфавита a-z.

Гарантируется, что символ C встречается в строке S.

Вывод: arr - массив, где arr.Length == S.Length, arr[i] - это расстояние от индекса i до ближайшего вхождения символа C в строку S.

Примечание: расстояние между индексами i и j равно модулю разности (i - j).

Примеры: 

1. S = "loveunilecs", c = 'e';

Output: [3, 2, 1, 0, 1, 2, 2, 1, 0, 1, 2]

2. S = "aaab", c = 'b';

Output: [3, 2, 1, 0]

Report Page