Фил Ранжин
ворвались крутые фпшники
Фил Ранжин
выебывались
Фил Ранжин
выебывались
Фил Ранжин
очень сильно выебывались
Фил Ранжин
а потом мой друган сказал, что посылает таких нахуй с собесов, потому что они подстроку найти не могут без нативных методов
Фил Ранжин
и чел из фпшников разорался, написал код поиска подстроки
Фил Ранжин
но код не сработал
Mark
лол
Фил Ранжин
он работал. только если подстрока в самом начале строки была
Anonymous
Anatoly
а друган-то сам написать может?
Фил Ранжин
ненаю
Фил Ранжин
я написал
Фил Ранжин
def substring(s1: String, s2: String): Int = {
if(s1.isEmpty) return -1
var i = 0
while(i < s2.length() && s1(0) != s2(i)){
i += 1
}
if(i == s2.length()) return -1
val start = i
var j = 0
while(j < s1.length() && j < s2.length() && s2(i) == s1(j)){
j += 1
i += 1
}
if(i == s2.length - 1 && i - start == s1.length) return start
return -1;
}
Фил Ранжин
вот код фпшника
Ayrat
Ilya
Не фпшно.
Фил Ранжин
const substring = (src, substr) => {
for(let i=0; i< src.length; i++) {
const sublength = substr.length;
for(let j=0; j < sublength;j++) {
if(src[i+j]!==substr[j]) break;
if (j===sublength-1) return i;
}
}
return -1;
}
Ayrat
Это какая-то джава на скале
Фил Ранжин
Не фпшно.
так ему сказали императивно надо
Ilya
Даже без рекурсии.
Фил Ранжин
Фил Ранжин
но я его в телеге писал
Anatoly
и он не работает =)
Фил Ранжин
работает
Anatoly
работает
i+j больше длины и привет
Фил Ранжин
жс не валится от индексов за пределами
Anatoly
а, ну да, "работает"
Фил Ранжин
Anatoly
примерно туда же нахуй
Anatoly
это не работает
Ayrat
Ахахахах
Фил Ранжин
работает как и должно, какие проблемы
Фил Ранжин
то что он опирается на хуевое поведение в жс
Anatoly
кстати, точно, по дохера === надо было понять, что это либо одно говно, либо творое
Anatoly
но вот баксов нет, то точно первое
Ayrat
Фил Ранжин
я короче к чему
Ayrat
Фил Ранжин
хаскелисты вообще чет из другого мира
Anatoly
я короче к чему
так фикс твоего кода ровно в добавлении одной разницы
Ilya
Действительно, аж целый один чувак не смог поиск подстроки написать.
Anatoly
(арифметического действия)
Anatoly
так что хер ли ты споришь - не ясно
Ayrat
Ayrat
Ну и в целом, ну не смог код написать на публику - бывает. Меня больше смущает способ, а не результат
Anatoly
Ayrat
Фил Ранжин
Anatoly
это либо эксепшн, либо опасное поведение, которое приведёт к dirty reads
Фил Ранжин
андефайнед не равен символу из второй, цикл заканчивается, все рады
Фил Ранжин
т.е. это грязно, но намеренно
Anatoly
и оправдывать эту хуйню тем, что "сматрите у меня сработало" - это признак низкой инженерной культуры, за которую сразу нахуй с пляжа
Фил Ранжин
что бы покороче написать
Фил Ранжин
Фил Ранжин
это жс
Фил Ранжин
какая культура
Фил Ранжин
инженерная
Фил Ранжин
типов нету даже
Anatoly
и в С в рантайме их тоже нет
Anatoly
Ilya
Есть Flow для js, кстати.
Фил Ранжин
ну вот я бы и не стал особо заморачиваться с классом кода в япе с динтипизацией. ну потому что это считай псевдокод
Anatoly
к слову, беда была поймана внутренними алёртами до того, как заметили клиенты
Фил Ранжин
Фил Ранжин
я в чатиках то бываю раз в сто лет
Фил Ранжин
Фил Ранжин
он очень много и хорошо говорил про теоркат
Фил Ранжин
и вот эти все сложные вещи
Anatoly
а ты знаешь теоркат?
Фил Ранжин
про теорию типов и т.д.
Фил Ранжин
т.е. я тупой по сравнению с ним
Фил Ранжин
обычная кодомакака