Добавлена поддержка Ежчана (
ejchan.net,
ejchan.site). Набегаем, тестируем архивацию,
сообщаем о замеченных проблемах.
К сожалению, значительная часть сохранённых до 2024 г. изображений и видео была потеряна (
подробности случившегося). Мы призываем всех неравнодушных
помочь нам с восстановлением утраченного контента!
Помогите решить задачу.
Нужно вычислить значение суммы интегралов Френеля (два интеграла, от sin(x^2) и cos(x^2) соответственно) на отрезке от нуля до входного Х.
Точность - до пятого знака включительно. Ограничения по времени - анальные.
Попробовал метод бесконечного количества бесконечно малых прямоугольников - не укладываюсь во время: нужная точность достигается при 200 млн прямоугольников, а за заданное время успеваю обработать только около 16 млн.
Вот код:
double x;
cin >> x;
double cap = 200Math.pow(10,6);
double length = x/cap;
double sum = 0.0;
double i = length/2;
while (i<x) {
double pow = ii;
sum = sum + length (Math.sin(pow)+Math.cos(pow));
i = i + length;
}
write((Math.ceil(sum Math.pow(10, 5)) / Math.pow(10, 5))+"");
Знаю, что хуйня, обоссывайте, но помогите.