Обновить

Тест проходил за миллисекунды. На настоящем файле тот же код думал минуту

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели7.2K
Всего голосов 3: ↑2 и ↓1+3
Комментарии3

Комментарии 3

Корректное решение -это не использовать c = charAt(s, i) и charLength(s), a сделать i = nextChar(i), который прибавляет к индексу 1 или 2. И не надо никаких отдельных случаев и всегда линия будет вместо квардрата.

Нагородили какие-то кеши ответов. При чем только с двумя слотами, потому что код работает с двумя строками. Так почему-бы тогда в вызывающем коде и не запомнить результат isPlain для каждой строки в локальной переменной?

Слишком переусложненное и накрученное решение тривиальной проблемы.

На js для посимвольного обхода лучше вообще не изобретать что-то, как в статье, а использовать строковый итератор, он из коробки умеет в эмодзи.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации