import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.BitSet; /* one off error: discards 1873th+ forbidden pair (OK there may be 1875 pairs but the last does not play any role: let say last is (50,75) but (i,50) i=1..25 and and (j,75) j=26..50 are already all forbidden, so we have to forget at least one pair from each set) */ public class EgorForgetLastPair { static final int CONSIDERED_PAIR_CNT=3*25*25-3;//here we go, should be 3*25^2! public static void main(String[] args) throws IOException { BufferedReader reader=new BufferedReader(new InputStreamReader(System.in)); String[] ss=reader.readLine().split(" "); int r=Integer.parseInt(ss[0]); int s=Integer.parseInt(ss[1]); int m=Integer.parseInt(ss[2]); int d=Integer.parseInt(ss[3]); int n=Integer.parseInt(ss[4]); int dN=s+m+d; int[] brandCnts=readArrayFromLine(reader.readLine()); BitSet[] dishes=new BitSet[dN]; for(int i=0;i1_000_000_000_000_000_000L) System.out.println("too many"); else System.out.println(result); } static int[] readArrayFromLine(String line){ String[] ss=line.split(" "); int[] res=new int[ss.length]; for(int i=0;i0 long maxB=Long.MAX_VALUE-a; if(b>maxB) return Long.MAX_VALUE; else return a+b; } static long safeMult(long a, long b){//a,b>0 long maxB=Long.MAX_VALUE/a; if(b>maxB) return Long.MAX_VALUE; else return a*b; } }