Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- *************************************
- float D=2;
- float H=8;
- float N=22 //начальные данные
- CODE:
- CurrentLvl = d; // текущий уровень сначала равен основе
- AverageLvl = (n - d)/h; // в среднем уровни будут по... (22-2)/8 = 2,5 = 3
- WithMaxLvl = (n - d)%h; // количество уровней с макс. кол-ом кирпечей (22-2)%8 = 1.6 = 2
- if(WithMaxLvl != 0) { // проверяем не равно ли это количество 0, т.е. вдруг их нету
- MaxLvl = AverageLvl + 1; // если есть то определяем скольким это будет равно 3 + 1 = 4
- }
- n = n - d; // отнимаем основу и работаем с оставшимися кирпичами
- for (i=0; i<h; i++) { // итерируем по количеству уровней
- if(currentLvl+1 <= MaxLvl && currentLvl+1 <= n) { // проверяем, если мы увеличим предыдущий уровень будет ли он больше
- макс. уровня и Н(количества оставшихся кирпичей)
- currentLvl = currentLvl+1; // если все ок, то за поминаем в переменную
- if(WithMaxLvl != 0 ) { // проверяем есть ли у нас возможность использовать уровень с макс.
- количеством кирпичей, если есть, то ...
- if(MaxLvl == currentLvl) { // проверяем, а равен ли этот уровень максимальному, если да, то...
- WithMaxLvl = WithMaxLvl - 1; // отнимает от этого количество 1 возможность
- }
- } else { // если мы больше не можем делать уровни с макс.кол-вом, то...
- currentLvl = currentLvl-2; // уменьшаем уровень на 2, т.к. в начале мы добавили 1.
- }
- } else { // если все пздц... надо додумать(осторожно ошибки)
- currentLvl = currentLvl - 2;
- }
- n = n - currentLvl; // отнимаем использованные кирпичи
- System.out.printf(currentLvl); // выводим
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement