Только с++ в игру быки и коровы играют два игрока. первый игрок загадывает последовательность из n различных цветов. всего различных цветов существуют m. цвета пронумерованы целыми числами от 1 до m. таким образом загаданную последовательность можно представить в виде массива a из n элементов: a0, an-1. второй игрок пытается угадать массив a. для этого он сообщает первому игроку своё предположение: массив b. в ответ на предположение первый игрок сообщает второму количество быков и коров в его предположении. быком называется такое i, что ai = bi. коровой называется такое i, что ai ≠ bi, но существует такое j, что ai = bj. ваша : по заданным массивам a и b вычислить количество быков и коров. входные данные в первой строке задано два целых числа: n, m (1 ≤ n ≤ 5000, 1 ≤ m ≤ 105) — количество элементов в массиве и количество различных цветов. в следующей строке задано n целых чисел через пробел: a0, an-1 (1 ≤ ai ≤ m) — элементы массива a. в следующей строке задано n целых чисел через пробел: b0, bn-1 (1 ≤ bi ≤ m) — элементы массива b. выходные данные выведите два целых числа через пробел: количество быков и коров. пример(ы) input.txt 5 10 4 3 8 9 7 8 3 5 2 4 output.txt 1 2 input.txt 3 3 1 2 3 3 1 2 output.txt 0 3 input.txt 3 3 1 2 3 1 2 3 output.txt 3 0
using namespace std;
#define f0(i,n) for (int i = 0; i < (n); ++i)
int main()
{
int n, m;
cin >> n >> m;
vector<int> a(n);
f0(i, n)
cin >> a[i];
vector<int> b(n);
f0(i, n)
cin >> b[i];
int bi = 0;int cow = 0;
f0(i, n)
if (a[i] == b[i])bi++;
else
f0(j,n)
if (a[i] == b[j])cow++;
cout << bi << ' ' << cow;
}