const elements = document.querySelectorAll('div[data-atr]')
elements.forEach(elem => elem.style = elem.dataset.atr);
function wrap(liquid, cans){
let result = []
cans = cans.sort((a,b) => b - a)
//сортируем все банки по убыванию объёма
while(cans.length && liquid - cans[0] >= 0){
//пока есть пустая банка и её объём
//не превышает объём оставшийся краски
liquid -= cans[0]
//вычитаем объём банки
result.push(cans.splice(0,1)[0])
//выдираем банку из исходного массива
//и ложим в результирующий
}
while ( liquid > 0 ){
//пока ещё есть краска
cans = cans.sort((a,b) => Math.abs(liquid-b) - Math.abs(liquid-a))
//сортируем по принципу:
//самой последней должна быть банка,
//объём которой ближе объёму оставшейся краски
liquid -= cans[cans.length - 1]
//вычитаем объём банки
result.push(cans.pop())
//выдираем банку из исходного массива
//и ложим в результирующий
}
return result
}
let emptyCans = [15,7,10,12,10]
console.log(wrap(33,emptyCans))
//[15, 12, 7] - эти банки использованы
console.log(emptyCans)
//[10,10] - эти остались
For Each s In ActivePage.Layers("circuits").Shapes.All
s.Outline.SetNoOutline
Next s
buttonElement.addEventListener('mousedown', function() {
audio.pause(); // or play()
}
buttonElement.addEventListener('mouseup', function() {
audio.play(); // or pause()
}
this.createForm = this.fb.group({
...
contacts: this.fb.group({
telephones: ['', []],
emails: ['', []],
postals: ['', []]
})
});
<form [formGroup]="createForm">
<div formGroupName="contacts">
...
<input type="text" name="firstName" placeholder="" formControlName="emails">
...
.btn-change-sect {
display: none;
border-bottom: 2px solid #ffffff;
}
.active {
display: block;
border-bottom: 2px solid #ff7300;
}
$( ".btn-change-sect" ).click(function() {
// убираем активный стиль со всех подобных элементов
$( ".btn-change-sect" ).removeClass("active");
// ставим активный стиль текущему элементу
$(this).addClass("active");
});