import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); String[] genes = new String[n]; for(int genes_i=0; genes_i < n; genes_i++){ genes[genes_i] = in.next(); } int[] health = new int[n]; for(int health_i=0; health_i < n; health_i++){ health[health_i] = in.nextInt(); } int s = in.nextInt(); int max = 0; int min =0; for(int a0 = 0; a0 < s; a0++){ int first = in.nextInt(); int last = in.nextInt(); String d = in.next(); // your code goes here int sum =0; //System.out.println(d.substring(0,2)); for(int i = first; i<= last ;i++) { if(genes[i].length() > 1) { int k =0; while(k+2 != d.length()) { if(((d.substring(k,k+2)).equals(genes[i]))) {sum = health[i]+sum; } k++; } } else{ if(d.contains(genes[i])) { sum = sum+health[i]; } } } if(sum > max) { max = sum; } if(min < sum) { sum = min; } } System.out.println(min + " " + max); } }