만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

구분구적법으로 적분값 맞추기

시간 제한1초메모리 제한512 MB

요약
다항식과 구간 [a,b], 소구간 개수 N이 주어질 때 리만 합이 정적분과 같아지는 ε을 [0, Δx]에서 구해 소수점 여섯 자리로 출력하고, 없으면 -1을 출력한다.
난이도

보통10점 중 6점

유형
수학, 이분 탐색, 구현, 완전 탐색
정답자
아직 제출이 없습니다

문제

어떤 함수의 적분값은 다음과 같이 근사할 수 있다.

∫abf(x) dx≈∑k=0n−1f(a+kΔx+ϵ) Δx\int_a^b f(x)\,dx \approx \sum_{k=0}^{n-1} f(a + k\Delta x + \epsilon)\,\Delta x

Δx=b−an,0≤ϵ≤Δx\Delta x = \frac{b-a}{n}, \qquad 0 \le \epsilon \le \Delta x

훈련소에서 신나게 적분을 계산하던 민규는 문득 ϵ\epsilon을 잘 정하면 이 근삿값을 실제 적분값과 일치시킬 수 있지 않을까 하는 생각이 들었다. 그런데 이를 확인하려면 소수점 계산이 필요해서 손으로 풀기에는 한계가 있다는 것을 깨달았고, 여러분에게 이를 위한 프로그램을 만들어 달라고 부탁했다.

이 문제에서 ff는 다항함수이다.

입력

첫째 줄에 다항함수의 차수를 나타내는 양의 정수 KK가 주어진다. (1≤K≤101 \le K \le 10)

둘째 줄에 최고차항부터 내림차순으로 각 항의 계수를 나타내는 정수 c1,c2,…,cK+1c_1, c_2, \ldots, c_{K+1}이 주어진다. (0≤ci≤100 \le c_i \le 10, 1≤c1≤101 \le c_1 \le 10)

셋째 줄에 적분 구간의 시작과 끝을 나타내는 두 정수 aa, bb와 구간을 쪼개는 개수 NN이 주어진다. (0≤a<b≤100 \le a < b \le 10, 1≤N≤101 \le N \le 10)

출력

구분구적법으로 계산한 근삿값을 실제 적분값과 일치시키는 ϵ\epsilon을 소수점 아래 여섯째 자리까지 반올림하여 한 줄에 출력한다. 예를 들어 답이 0.250.25이면 0.250000을 출력한다.

주어지는 입력에서 조건을 만족하는 ϵ\epsilon은 많아야 하나이다. 그런 값이 존재하지 않으면 -1을 출력한다.

힌트

다항함수의 적분은 다음과 같이 계산한다.

∫abxn dx=bn+1−an+1n+1\int_a^b x^n\,dx = \frac{b^{n+1} - a^{n+1}}{n+1}

예제4

  1. 예제 1

    입력
    1
    1 0
    0 1 2
    
    예상 출력
    0.250000
    
  2. 예제 2

    입력
    7
    10 3 5 4 7 1 7 5
    3 4 3
    
    예상 출력
    0.174179
    
  3. 예제 3

    입력
    9
    10 9 8 6 6 7 5 6 4 5
    7 8 5
    
    예상 출력
    0.101734
    
  4. 예제 4

    입력
    5
    7 6 6 3 2 3
    0 10 3
    
    예상 출력
    1.892783