#include <cstdio>
#include <cstring>
#include <cmath>
#include <iostream>
#include <iomanip>
#include <sstream>
#include <string>
#include <vector>
#include <algorithm>
#include <queue>
#include <stack>
#include <set>

using namespace std;

double F[150000],P[150000];
int p[150000];

int main(){
    int n,m,C;
    
    scanf("%d %d %d",&n,&m,&C);
    
    int x[n];
    
    for(int i = 0;i < n;++i) scanf("%d",&x[i]);
    for(int i = 1;i < n;++i) scanf("%d",&p[i]);
    
    P[0] = 0;
    for(int i = 1;i < n;++i)
        P[i] = P[i - 1] + p[i] / 100.0;
    
    for(int i = 0;i < n;++i)
        F[i] = x[i] / 2.0 - C * P[i];
    
    double ans = 0;
    
    for(int i = 0,xa,xb;i < m;++i){
        scanf("%d %d",&xa,&xb);
        --xa; --xb;
        
        double aux = 0,mn = F[xa];
        
        for(int j = xa;j <= xb;++j){
            mn = min(mn,F[j]);
            aux = max(aux,F[j] - mn);
        }
        
        ans += aux;
    }
    
    printf("%.8f\n",ans);
    
    return 0;
}
