Как уменьшить количество символов

120
19 июня 2019, 10:00

Есть скрипт на JavaScript принимаюший n строк и находящий наибольшую общую подстроку.

function z(e) {
if (e.length)
for (n = e[0].length, l = n; l; l--)
  for (s = 0; s <= n - l; s++)
    if (r = e[0].substring(s, s + l), e.every(n => ~n.indexOf(r))) return r;
return ''
}
console.log(z(process.argv.slice(2)));

Можно ли сделать это за еще меньшее количество символов?

Answer 1
JS, 119 символов
z=a=>{if(r=a[0],!r)return'';for(i=0;i<r.length;i+=1)for(j=1;j<a.length;j+=1)if(r[i]!==a[j][i])r=r.slice(0,i);return r};
Answer 2

Зачем Вам меньше символов? Главное, что работало правильно и код был понятен. Я немного поправил Ваш код

 function z(e) {
      if (!e.length) return ''
      for (let n = e[0].length, l = n; l; l--)
        for (let s = 0; s <= n - l; s++)
          if (let r = e[0].substring(s, s + l) && e.every(n => ~n.indexOf(r))) return r;
 }
Answer 3

166 "чистых" символов против твоих 180. Меньше не могу. Логику не затронул, просто старался заметить повторяющиеся моменты.use strict не пройдет.

z = e => {
x = e[0]
if (!x) return ''
n = x.length
for (l = n; l; l--)
  for (s = 0; s <= n - l; s++)
    if (r = x.substring(s, s + l), e.every(n => ~n.indexOf(r))) return r;
}
console.log(z(process.argv.slice(2)));
READ ALSO
Слои в Svg при применении Drop Shadow

Слои в Svg при применении Drop Shadow

Мне бы хотелось иметь затенение для графика, который я делаю с использованием d3 и SVG, но у меня возникли проблемы с тенями, перекрывающими...

85
Как добавить значения из json в одинаковые div?

Как добавить значения из json в одинаковые div?

В общем имеется код для добавления значений из json в div блоки

134
Как сделать перенос первой строки и сокрытие всего остального в блоке?

Как сделать перенос первой строки и сокрытие всего остального в блоке?

Кто знает, как сделать так, чтобы один раз строка в блоке переносилась, а всё что не влезло во вторую скрывалось за многоточие? Я с таким не сталкивался

101