#include <iostream>
#include <unordered_set>
bool check_product_of_every_pair(int arr[], int size) {
std::unordered_set<int> set;
for (size_t i = 0; i < size; i++) {
set.insert(arr[i]);
}
for (size_t i = 0; i < size; i += 2) {
int product = arr[i] * arr[i + 1];
std::cout << arr[i] << " * " << arr[i + 1] << " = " << product << "\n";
if (set.find(product) == set.end()) {
return false;
}
}
return true;
}
int main()
{
int arr[] = {2, 3, 6, 5, 30, 0};
int size = sizeof(arr) / sizeof(arr[0]);
std::cout << (check_product_of_every_pair(arr, size) ? "Yes" : "No");
}
/*
run:
2 * 3 = 6
6 * 5 = 30
30 * 0 = 0
Yes
*/