Size: a a a

JS Liberty [ОЫ]

2020 June 12

M

Mr. Nobody in JS Liberty [ОЫ]
Lupusregina[beta]
по условию нельзя использовать либу
я знаю, я про то что тесты делаются с помощью неё, т.е. результат должен быть такой же, а если ей подашь равные числа то получишь его же
источник

M

Mr. Nobody in JS Liberty [ОЫ]
Math.max(12, 12); // 12
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
Mr. Nobody
я знаю, я про то что тесты делаются с помощью неё, т.е. результат должен быть такой же, а если ей подашь равные числа то получишь его же
ясна
источник

M

Mr. Nobody in JS Liberty [ОЫ]
а, я не прав, там же массив надо передавать )
источник

M

Mr. Nobody in JS Liberty [ОЫ]
хотя нет :) всё правильно
источник

M

Mr. Nobody in JS Liberty [ОЫ]
а у тебя с целыми только будет работать?
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
Mr. Nobody
а у тебя с целыми только будет работать?
со всем
источник

M

Mr. Nobody in JS Liberty [ОЫ]
а что за "c"?
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
Mr. Nobody
а что за "c"?
переменная
источник

M

Mr. Nobody in JS Liberty [ОЫ]
ну я понял) там же 2 должно быть
источник

M

Mr. Nobody in JS Liberty [ОЫ]
а у тебя три
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
Mr. Nobody
а у тебя три
это что бы в выражении оставить все
источник

N

Nick in JS Liberty [ОЫ]
Journey - Don't Stop Believin' (from Live in Houston 1981 The Escape Tour).mp3
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
се, решил
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
хотя только с целыми работает
источник

N

Nick in JS Liberty [ОЫ]
Metallica - Seek %26 destroy (HQ).mp3
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
а, так они не работают(
источник

N

Nick in JS Liberty [ОЫ]
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
const getMax = (a, b, abs, c) => (
 abs = n => (n**2)**0.5,
 c = a - b,
 c = abs(c + 1) - abs(c),
 (a * (c + 1) - b * (c - 1)) / 2
)

function _testHelp(r) {
 if ( Math.random() < 0.3 ) {
   a = b = r()
 } else
 if ( Math.random() <= 0.6 ) {
   do {
     a = r()
     b = r()
   } while( Math.max(a, b) !== a )
 } else {
   do {
     a = r()
       b = r()
   } while( Math.max(a, b) !== b )
 }

 return [a, b]
}
function testInt(getMax, count = 1e6) {
 const r = () => (Math.random() - 0.5) * 1e6 | 0
 for(let i = 0; i < count; i++) {
   let [a, b] = _testHelp(r)
 
   if ( getMax(a, b) !== Math.max(a, b) ) {
     console.error(`testInt, max(${a}, ${b}) invalid`);
     return false;
   }
 }
 return true;
}
function testFloat(getMax, count = 1e6) {
 const r = () => (Math.random() - 0.5) * 1e6
 for(let i = 0; i < count; i++) {
   let [a, b] = _testHelp(r)
 
   if ( getMax(a, b) !== Math.max(a, b) ) {
     console.error(`testFloat, max(${a}, ${b}) invalid`);
     return false;
   }
 }
 return true;
}

testInt(getMax, 1e6)
testFloat(getMax, 1e6)
источник

S

Syntax Highlight Bot in JS Liberty [ОЫ]
Lupusregina[beta]
const getMax = (a, b, abs, c) => (
 abs = n => (n**2)**0.5,
 c = a - b,
 c = abs(c + 1) - abs(c),
 (a * (c + 1) - b * (c - 1)) / 2
)

function _testHelp(r) {
 if ( Math.random() < 0.3 ) {
   a = b = r()
 } else
 if ( Math.random() <= 0.6 ) {
   do {
     a = r()
     b = r()
   } while( Math.max(a, b) !== a )
 } else {
   do {
     a = r()
       b = r()
   } while( Math.max(a, b) !== b )
 }

 return [a, b]
}
function testInt(getMax, count = 1e6) {
 const r = () => (Math.random() - 0.5) * 1e6 | 0
 for(let i = 0; i < count; i++) {
   let [a, b] = _testHelp(r)
 
   if ( getMax(a, b) !== Math.max(a, b) ) {
     console.error(`testInt, max(${a}, ${b}) invalid`);
     return false;
   }
 }
 return true;
}
function testFloat(getMax, count = 1e6) {
 const r = () => (Math.random() - 0.5) * 1e6
 for(let i = 0; i < count; i++) {
   let [a, b] = _testHelp(r)
 
   if ( getMax(a, b) !== Math.max(a, b) ) {
     console.error(`testFloat, max(${a}, ${b}) invalid`);
     return false;
   }
 }
 return true;
}

testInt(getMax, 1e6)
testFloat(getMax, 1e6)
источник