// Arup Guha
// 4/23/2024
// Checker for Spring 2024 COP 3503 Program 6B: Subsequence Sum

import java.util.*;
import java.io.*;

public class check_subseqsum {

	public static void main(String[] args) throws Exception {
	
		// First command line argument is input file.
		Scanner stdin = new Scanner(new File(args[0]));
		
		// Second is student output.
		Scanner studentOut = new Scanner(new File(args[1]));
		
		// Third is correct output.
		Scanner sol = new Scanner(new File(args[2]));
		
		// Get list length, # of partitions.
		int n = stdin.nextInt();
		int k = stdin.nextInt();
		
		// Read in list
		long[] nums = new long[n];
		for (int i=0; i<n; i++)
			nums[i] = stdin.nextLong();
		
		// Get all student output, tokenized. Assume 1 long followed by ints. Will crash otherwise.
		ArrayList<Integer> student = new ArrayList<Integer>();
		long studans = -1;
		if (studentOut.hasNext())
			studans = studentOut.nextLong();
		while (studentOut.hasNext())
			student.add(studentOut.nextInt());
		
		// Get real solution.
		long maxsum = sol.nextLong();
		
		// Here we check the main answer.
		int score = 0;
		if (maxsum == studans) 
			score = 2;
		
		// Only in this case does the partition have a shot of counting for credit.
		if (score == 2) {
		
			// copy partition, 0 based.
			int[] start = new int[student.size()];
			for (int i=0; i<student.size(); i++)
				start[i] = (student.get(i))-1;
			
			// Only grade if partition is valid.
			if (validate(start, n)) {
				
				long res = nums[start[0]];
				boolean ok = true;
				// Check differences.
				for (int i=1; i<start.length; i++) {
					if (Math.abs(nums[start[i-1]]-nums[start[i]]) > k) ok = false;
					res += nums[start[i]];
				}
				
				// It works!
				if (ok && res == maxsum) 
					score = 4;
			}
		}
		
		// Report results.
		if (score == 0) System.out.println("0 points. Incorrect max sum.");
		if (score == 2) System.out.println("2 points. Correct sum only.");
		if (score == 4) System.out.println("4 points. Correct sum and partition.");
	}
	
	// Returns true iff start stores a sorted distinct list of integers in between 0 and n-1, inclusive.
	public static boolean validate(int[] start, int n) {
		if (start[0] < 0) return false;
		for (int i=0; i<start.length-1; i++)
			if (start[i] >= start[i+1])
				return false;
		return start[start.length-1] < n;
	}

}