Size: a a a

JavaScript Noobs — сообщество новичков

2020 December 28

С

Сергей Гетьман... in JavaScript Noobs — сообщество новичков
Denys Mikhalenko
а как твой код вообще решает задачу?
направь в нужный параметр
источник

AK

Alex Kovalenko in JavaScript Noobs — сообщество новичков
нечетный покупатель может купить только за 25.
источник

AK

Alex Kovalenko in JavaScript Noobs — сообщество новичков
кратный 2 за 50, кратный 4 за 100...
источник

С

Сергей Гетьман... in JavaScript Noobs — сообщество новичков
Alex Kovalenko
нечетный покупатель может купить только за 25.
так не пройдет
источник

AK

Alex Kovalenko in JavaScript Noobs — сообщество новичков
почему?
источник

С

Сергей Гетьман... in JavaScript Noobs — сообщество новичков
Alex Kovalenko
почему?
а если три массива [50,50,50, 50,50] и такие же по 25 и по 100
источник

KP

Kotan 🐱 Pupkin in JavaScript Noobs — сообщество новичков
Alex Kovalenko
кратный 2 за 50, кратный 4 за 100...
Если будет очередь из чуваков, у которых есть такие деньги: [25, 25, 25, 25, 100], то последний чувак сможет купить билет, т.к. у Васи будет сотка в кассе (4 банкноты по 25) и пятому чуваку он сдаст 3*25= 75 у.е.
источник

AK

Alex Kovalenko in JavaScript Noobs — сообщество новичков
идея в том, что нужно проверять сколько уже принесли в кассу 25 и 50 для выдачи сдачи с 100. а дальше каждый раз когда 50 закончились на сдачу отдавать все 25. когда вся сдача закочилась, то опять только за 25 нечетный может купить билет...
источник

М

Максим in JavaScript Noobs — сообщество новичков
Просто при 25 делать +1, при 50 -2, при 100 -4 и проверять каждый раз больше 0 ли текущее число, если нет - сразу возвращать no. Условие требует соблюдать порядок массива, поэтому считать все нет смысла.
источник

J

Jakhongir in JavaScript Noobs — сообщество новичков
Сергей Гетьман
Задача: Только что вышел новый фильм «Мстители»! В кассах кинотеатра много людей, стоящих в огромную очередь. У каждого из них есть единственная банкнота в 100, 50 или 25 долларов. Билет на «Мстителей» стоит 25 долларов.

Вася в настоящее время работает клерком. Он хочет продать билет каждому человеку в этой очереди.

Может ли Вася продать билет каждому и дать сдачу, если у него изначально нет денег и он продает билеты строго в порядке очереди?

Верните ДА, если Вася может продать билет каждому и отдать сдачу с имеющимися у него в данный момент счетами. В противном случае верните NO.

Мое решение:
function tickets(peopleInLine) {
 let cassaVasia = 0;

 for (let i = 0; i < peopleInLine.length; i++) {
   let banknota = peopleInLine[i]; // текущая банкнота
   cassaVasia += banknota; // касса

   if (cassaVasia - banknota + peopleInLine[i + 1] <= cassaVasia) {
     return "YES";
   } else {
     return "NO";
   }
 }
}

Но на эти массивы не проходит:

// let arr = [ 25, 25, 25, 25, 25, 100, 100 ] // NO
// [ 100, 100, 100, 100, 100, 100, 100, 100, 100, 100 ] // NO
// [ 25, 25, 25, 25, 25, 100, 100 ] // NO
// [ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50 ] // NO
//[ 25, 25, 25, 25, 25, 100, 100 ] // NO

может кто поможет ?
Надо сначало делать проверку на сдачу, а потом уже добавлять/убирать деньги кассы
источник

J

Jakhongir in JavaScript Noobs — сообщество новичков
А то ты забрал деньги и только потом проводишь проверку
источник

DA

D A in JavaScript Noobs — сообщество новичков
Здравствуйте, подскажите, в чем ошибка? fotos.attr('src', 'img/М/'+data.foto+'.jpg');  В data.foto приходит число, проверил через alert.
источник

j

jk in JavaScript Noobs — сообщество новичков
Jakhongir
А то ты забрал деньги и только потом проводишь проверку
Разве это принципиально? Важно ведь то сможешь ли ты в итоге наскрести сдачу или нет.
источник

J

Jakhongir in JavaScript Noobs — сообщество новичков
Сергей Гетьман
Задача: Только что вышел новый фильм «Мстители»! В кассах кинотеатра много людей, стоящих в огромную очередь. У каждого из них есть единственная банкнота в 100, 50 или 25 долларов. Билет на «Мстителей» стоит 25 долларов.

Вася в настоящее время работает клерком. Он хочет продать билет каждому человеку в этой очереди.

Может ли Вася продать билет каждому и дать сдачу, если у него изначально нет денег и он продает билеты строго в порядке очереди?

Верните ДА, если Вася может продать билет каждому и отдать сдачу с имеющимися у него в данный момент счетами. В противном случае верните NO.

Мое решение:
function tickets(peopleInLine) {
 let cassaVasia = 0;

 for (let i = 0; i < peopleInLine.length; i++) {
   let banknota = peopleInLine[i]; // текущая банкнота
   cassaVasia += banknota; // касса

   if (cassaVasia - banknota + peopleInLine[i + 1] <= cassaVasia) {
     return "YES";
   } else {
     return "NO";
   }
 }
}

Но на эти массивы не проходит:

// let arr = [ 25, 25, 25, 25, 25, 100, 100 ] // NO
// [ 100, 100, 100, 100, 100, 100, 100, 100, 100, 100 ] // NO
// [ 25, 25, 25, 25, 25, 100, 100 ] // NO
// [ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50 ] // NO
//[ 25, 25, 25, 25, 25, 100, 100 ] // NO

может кто поможет ?
И условно [25 25 50 50 100] не должно проходить проверку, но код через суммирование кассы его пропустит так что, су
Ммирование тоже не вариант
источник

j

jk in JavaScript Noobs — сообщество новичков
У меня пока только с горой if получилось.
источник

KP

Kotan 🐱 Pupkin in JavaScript Noobs — сообщество новичков
jk
У меня пока только с горой if получилось.
скинь посмотреть
источник

М

Максим in JavaScript Noobs — сообщество новичков
jk
У меня пока только с горой if получилось.
можно объект по идее :D
источник

j

jk in JavaScript Noobs — сообщество новичков
Максим
можно объект по идее :D
Ага. Объект в виде банка и сделал.
источник

J

Jakhongir in JavaScript Noobs — сообщество новичков
jk
Разве это принципиально? Важно ведь то сможешь ли ты в итоге наскрести сдачу или нет.
Пришел первый чел с 50 рублями. Забрали деньги. Проверяем на сдачу 25 рублей. Деньги в кассе есть значит ок. Но на самом деле у нас одна банкнота в 50 и сдачу нифига не сможем дать. Это принципиально
источник

М

Максим in JavaScript Noobs — сообщество новичков
function tickets(peopleInLine) {
 let count = 0;

 for (let item of peopleInLine) {
   const summ = { 25: 1, 50: 2, 100: 4 }
   if (summ[item] === 1) {
     count++;
   } else {
     count = count - summ[item];
   }

   if (count < 0) {
     return 'no';
   }
 }

 return 'yes';
}
источник