题目链接:https://vjudge.net/contest/279616#problem/C
代码:
#include <iostream>
using namespace std;
int main()
{
int n, p, q;
cin >> n;
if (n < 1 || n>100)
return 0;
cin >> p;
if (p<0 || p>n)
return 0;
int *a = new int[p];
for (int i = 0; i < p; i++)
{
cin >> a[i];
if (a[i] > n || a[i]<1)
return 0;
}
cin >> q;
if (q<0 || q>n)
return 0;
int *b = new int[q];
for (int i = 0; i < q; i++)
{
cin >> b[i];
if (b[i] > n || b[i] < 1)
return 0;
}
int i,k,j;
int *temp = new int[n];
for ( k=0,j = 1; j <= n; j++)
{
for ( i = 0; i < p; i++)
{
if (a[i] == j)
break;
}
if (i == p)
{
temp[k] = j;
k++;
}
}
k--;
for (; k >= 0; k--)
{
for (i = 0; i < q; i++)
if (b[i] == temp[k])
break;
if (i == q )
{
cout << "Oh, my keyboard!";
break;
}
}
if (k == -1)
cout << "I become the guy.";
delete[]a;
delete[]b;
delete[]temp;
}