Size: a a a

2020 June 20

DE

Denis Efremov in pro.js
2**24
источник

L

Lupusregina[beta] in pro.js
все равно не ясно
источник

DE

Denis Efremov in pro.js
Ну смотри
источник

L

Lupusregina[beta] in pro.js
где функция like('abc') = количество слов начинающихся с абс
источник

DE

Denis Efremov in pro.js
Их одинаковое количество
источник

DE

Denis Efremov in pro.js
Просто степень уменьшаешь на длину строки
источник

НА

Николай Алиферов... in pro.js
1 байт один символ, по условию задачи вроде случайные символы, но не сказано, какие именно)
источник

НА

Николай Алиферов... in pro.js
Так что можно только латиницу взять
источник

НА

Николай Алиферов... in pro.js
Там кириллица, но можно свою таблицу соответствия сделать. 66 однобайтных чисел по сути
источник

НА

Николай Алиферов... in pro.js
источник

НА

Николай Алиферов... in pro.js
Короче это задание предлагает мне запихнуть считай гигабайт в локальное хранилище браузера. Интересненько)
источник

DE

Denis Efremov in pro.js
node --max-old-space-size=8192 index.js
источник

DE

Denis Efremov in pro.js
function getRandomLetter() {
 return String.fromCharCode((Math.random() * 25 + 97) ^ 0);
}
function getRandomLetters() {
 return getRandomLetter() + getRandomLetter() + getRandomLetter() + getRandomLetter()
}
let tmp = {}
const I = 25
function addProps (index = 0, o = {}) {
 if (index < I) {
   const l1 = getRandomLetters()
   o[l1] = {}
   o[l1] = addProps(index + 1, o[l1])
   const l2 = getRandomLetters()
   o[l2] = {}
   o[l2] = addProps(index + 1, o[l2])
   return o
 }
 return true
}
console.time(I)
tmp = addProps(0, tmp)
console.timeEnd(I)

function makeString(o, p = '') {
 if (typeof o === 'boolean') {
   return p
 }
 const key = Object.keys(o)[Math.round(Math.random())]
 return makeString(o[key], p + key)
}
console.time('toStr')
const res = makeString(tmp)
console.timeEnd('toStr')
console.log(res)
console.log(res.length)
источник

S

Syntax Highlight Bot in pro.js
Denis Efremov
function getRandomLetter() {
 return String.fromCharCode((Math.random() * 25 + 97) ^ 0);
}
function getRandomLetters() {
 return getRandomLetter() + getRandomLetter() + getRandomLetter() + getRandomLetter()
}
let tmp = {}
const I = 25
function addProps (index = 0, o = {}) {
 if (index < I) {
   const l1 = getRandomLetters()
   o[l1] = {}
   o[l1] = addProps(index + 1, o[l1])
   const l2 = getRandomLetters()
   o[l2] = {}
   o[l2] = addProps(index + 1, o[l2])
   return o
 }
 return true
}
console.time(I)
tmp = addProps(0, tmp)
console.timeEnd(I)

function makeString(o, p = '') {
 if (typeof o === 'boolean') {
   return p
 }
 const key = Object.keys(o)[Math.round(Math.random())]
 return makeString(o[key], p + key)
}
console.time('toStr')
const res = makeString(tmp)
console.timeEnd('toStr')
console.log(res)
console.log(res.length)
источник

DE

Denis Efremov in pro.js
У меня 2 с половиной минуты
источник

НА

Николай Алиферов... in pro.js
а куда складываешь?
источник

НА

Николай Алиферов... in pro.js
index.html:5 Uncaught DOMException: Failed to execute 'setItem' on 'Storage': Setting the value of '764855' exceeded the quota.
источник

НА

Николай Алиферов... in pro.js
локалсторадж посылает) а ну, что вы там юзаете?) indexed db или еще что-то?
источник

DE

Denis Efremov in pro.js
Я в объект пишу
источник

НА

Николай Алиферов... in pro.js
локалсторадж сходу тупой думаю так как он в строки переводит)
источник