import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.util.StringTokenizer;

public class Main {
	static int m[] = new int[5];
	static int w[] = new int[5];
	static int good, bad;
	static int x[] = {500, 1000, 1500, 2000, 2500};
	public static void main(String[] args) {
		InputStream inputStream = System.in;
		OutputStream outputStream = System.out;
		InputReader in = new InputReader(inputStream);
		PrintWriter out = new PrintWriter(outputStream);
		
		for (int i = 0; i < 5; i++)
			m[i] = in.nextInt();
		for (int i = 0; i < 5; i++)
			w[i] = in.nextInt();
		good = in.nextInt();
		bad = in.nextInt();
		double output = 100*good - 50*bad;
		for (int i = 0; i < 5; i++) {
			output += Math.max(0.3*(double)x[i], (1-(double)m[i]/(double)250)*(double)x[i]-50*(double)w[i]);
		}
		System.out.println((int)output);
		out.close();
	}
	static class InputReader {
	    public BufferedReader reader;
	    public StringTokenizer tokenizer;

	    public InputReader(InputStream stream) {
	        reader = new BufferedReader(new InputStreamReader(stream), 32768);
	        tokenizer = null;
	    }

	    public String next() {
	        while (tokenizer == null || !tokenizer.hasMoreTokens()) {
	            try {
	                tokenizer = new StringTokenizer(reader.readLine());
	            } catch (IOException e) {
	                throw new RuntimeException(e);
	            }
	        }
	        return tokenizer.nextToken();
	    }

	    public int nextInt() {
	        return Integer.parseInt(next());
	    }
	    public long nextLong(){
	        return Long.parseLong(next());
	    }
	    public double nextDouble(){
	        return Double.parseDouble(next());
	    }

	}
}
