
jQuery
Срочно помогите решить задачу кто в этом разберётся
Напишите пожалуйста как задачу


Количество камней в зависимости от стороны треугольника – арифметическая прогрессия с разностью, равной единице (в каждом ряду на 1 камень больше, чем в предыдущем). Таким образом, количество камней в зависимости от длины стороны – сумма прогрессии:
S = (2*a1 + (n-1)*d)*n / 2 = (2 + n - 1)*n / 2
Получается, что 2*s = (n+1)*n
Следовательно, n^2 + n - 2*s = 0
Решаем уравнение относительно n:
n1 = -1/2 + Sqrt(1/4 + 2*S)
n2 = -1/2 - Sqrt(1/4 + 2*S)
Второй корень отбрасываем – явно отрицательное число (пирамидки с отрицательной стороной не бывает).
Получаем, что
n = Sqrt(1/4 + 2*S) - 1/2
где n – размер пирамидки, а S – количество камней.
Например:
S = 3:
n = Sqrt(1/4 + 6) - 1/2 = Sqrt(25/4) - 1/2 = 5/2 - 1/2 = 4/2 = 2
– в пирамидке из 3 камней длина стороны = 2
S = 6:
n = Sqrt(1/4 + 12) - 1/2 = Sqrt(49/4) - 1/2 = 6/2 = 3
– в пирамидке из 6 камней длина стороны = 3
Теперь, собственно, программа:
#include <stdio.h>
#include <math.h>
int main(int argc, char* argv[]) {
size_t count;
double length;
printf("Введите общее число камней: ");
scanf("%lu", &count);
length = sqrt(0.25 + 2.0 * count) - 0.5;
printf("Максимально возможная сторона: %.0f\n", trunc(length));
return 0;
}
S = (2*a1 + (n-1)*d)*n / 2 = (2 + n - 1)*n / 2
Получается, что 2*s = (n+1)*n
Следовательно, n^2 + n - 2*s = 0
Решаем уравнение относительно n:
n1 = -1/2 + Sqrt(1/4 + 2*S)
n2 = -1/2 - Sqrt(1/4 + 2*S)
Второй корень отбрасываем – явно отрицательное число (пирамидки с отрицательной стороной не бывает).
Получаем, что
n = Sqrt(1/4 + 2*S) - 1/2
где n – размер пирамидки, а S – количество камней.
Например:
S = 3:
n = Sqrt(1/4 + 6) - 1/2 = Sqrt(25/4) - 1/2 = 5/2 - 1/2 = 4/2 = 2
– в пирамидке из 3 камней длина стороны = 2
S = 6:
n = Sqrt(1/4 + 12) - 1/2 = Sqrt(49/4) - 1/2 = 6/2 = 3
– в пирамидке из 6 камней длина стороны = 3
Теперь, собственно, программа:
#include <stdio.h>
#include <math.h>
int main(int argc, char* argv[]) {
size_t count;
double length;
printf("Введите общее число камней: ");
scanf("%lu", &count);
length = sqrt(0.25 + 2.0 * count) - 0.5;
printf("Максимально возможная сторона: %.0f\n", trunc(length));
return 0;
}
Похожие вопросы
- Прошу помочь разобраться с AJAX запросами
- Уход за волосами и ногтями доклад по биологии плиз помогите
- Помогите выбрать CMS для аналитического сайта (для формирования графических отчётов на сайте)
- Помогите правильно оформить jQuery.
- Срочно помогите решить задачи по геометрии пожалуйста с объяснениями!??????
- СРОЧНО! Помогите решить задачу по геометрии, пожалуйста
- Срочно! Помогите решить задачу
- срочно помогите решить задачи по генетике
- СрочНо!!!Помогите решить задачу по биологии(генетика)!!!!срочно!!!
- срочно помогите решить задачу!!!