ComparerInator
#include <vector>
using namespace std;
int p1( int a, int b ) { return a; }
int p2( int a, int b ) { return b; }
int p3( int a, int b ) { return a<b?a:b; }
int p4( int a, int b ) { return a<b?b:a; }
bool check( vector<int> A, vector<int> B, vector<int> wanted, int(*p)(int,int) )
{
for ( int i=0; i<(int)A.size(); i++ )
if ( p(A[i],B[i]) != wanted[i] )
return false;
return true;
}
class ComparerInator{public:
int makeProgram( vector <int> A, vector <int> B, vector <int> wanted )
{
if ( check(A,B,wanted,p1) ) return 1;
if ( check(A,B,wanted,p2) ) return 1;
if ( check(A,B,wanted,p3) ) return 7;
if ( check(A,B,wanted,p4) ) return 7;
return -1;
}};