Wrong answer for buetiful array

#include <bits/stdc++.h>
using namespace std;
void print(vector v){
for (int i=0;i<v.size();i++){
cout<<v[i]<<" ";
}
cout<<endl;
}

int main() {
// your code goes here
int t;cin>>t;
while(t–){
int n;
long long a,c=0;
cin>>n;
vector v1;
//vector::iterator it;
for (int i=0;i<n;i++){
cin>>a;
v1.push_back(a);
}
vector v2;
for (int i=0;i<n;i++){
for (int j=0;j<n;j++){
long long b;
if (i!=j){
b=v1[i]*v1[j];
v2.push_back(b);
}
}
}
//print(v2);
for (int i=0;i<v2.size();i++){
long long search=v2[i];
vector::iterator it;
it = std::find(v1.begin(), v1.end(), search);
//cout<<it-v1.begin()<<" ";
if (it != v1.end()){
c++;
}
}
//cout<<endl;
// cout<<c<<endl;
if (c>0){
cout<<“yes”<<endl;
}
else{
cout<<“no”<<endl;
}
}
return 0;
}