Size: a a a

2020 July 13

L

Lupusregina[beta] in pro.js
молодец
источник

L

Lupusregina[beta] in pro.js
источник

С

Славик in pro.js
=)
источник

С

Славик in pro.js
если я решаю задачки, то беру что-то алгоритмическое (скорость, сложность), ваши каты не про это как я понимаю
источник

С

Славик in pro.js
а тут всё начиналось с вопроса кого-то там
источник

С

Славик in pro.js
изначально не было известно, что он кату решает
источник

L

Lupusregina[beta] in pro.js
Славик
если я решаю задачки, то беру что-то алгоритмическое (скорость, сложность), ваши каты не про это как я понимаю
большинство сложных кат как раз про это(в еще более сложных катах 1ку  оптимизаций меньше, больше про писанину)
источник

KB

Konstantins Bogdanov... in pro.js
Славик
Set в джаваскрипте, конечно, расстраивает немного
а попробуй через массив символов или вообще битовую маску
источник

С

Славик in pro.js
предлагай нам свое решение
источник

KB

Konstantins Bogdanov... in pro.js
там же условие про то, что алфавит, значит 255 элементов хватит
источник

С

Славик in pro.js
ну вместо массива можно взять 4-х байтовое число и запихнуть символы битами
источник

С

Славик in pro.js
избавиться таким макаром от использования массива
источник

KB

Konstantins Bogdanov... in pro.js
я и говорю - маску
источник

KB

Konstantins Bogdanov... in pro.js
а потом просто сравнить значение с максимальным значением маски
источник

С

Славик in pro.js
ну напиши
источник

С

Славик in pro.js
посмотрим, насколько это шустрее
источник

С

Славик in pro.js
Никита Сковорода
function isPangram(str) {
 if (str.length < 26) return false
 const known = Array(26).fill(0)
 let total = 0
 for (let i = 0; i < str.length; i++) {
   const char = str.charCodeAt(i)
   const delta = char >= 97 && char < 123 ? 97 : 65
   const n = char - delta
   if (n >= 0 && n < 26 && !known[n]) {
     known[n] = 1
     total++
     if (total === 26) return true
   }
 }
 return false
}
вот здесь массив подмени
источник

L

Lupusregina[beta] in pro.js
та эта 6ку ката
источник

L

Lupusregina[beta] in pro.js
там никакой сложности с оптимизацией не будет
источник

С

Славик in pro.js
Konstantins Bogdanovs
а потом просто сравнить значение с максимальным значением маски
function isPangram(str) {
 if (str.length < 26) return false
 let known = 0  
 for (let i = 0; i < str.length; i++) {
   const char = str.charCodeAt(i)
   const delta = char >= 97 && char < 123 ? 97 : 65
   const n = char - delta    
   if (n >= 0 && n < 26) {
     const shift = 1 << n;
     known |= shift      
     if (known === 67108863) {
       return true
     }
   }
 }
 return false
}

прогоняй тесты
источник