/*
Author : Umang Gupta 
*/
#include<bits/stdc++.h>
#define ll long long int
#define pb push_back
#define fr(a,b) for(int i = a; i < b; i++)
#define rep(i,a,b) for(int i = a; i < b; i++)
#define mod 1000000007
#define inf (1LL<<60)
#define all(x) (x).begin(), (x).end()
#define prDouble(x) cout << fixed << setprecision(10) << x
#define triplet pair<ll,pair<ll,ll>>
#define goog(tno) cout << "Case #" << tno <<": "
#define fast_io ios_base::sync_with_stdio(false);cin.tie(NULL)
#define read(x) ll x; cin >> x
#define nline "\n"
#define first ff
#define second ss

using namespace std;
  
  void init_code()
  {
    fast_io;
    #ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
    #endif
  }

   int main()
   {
    init_code() ;
   //int =1;
    read(t);                           
    while(t--)
    {
      // int n,r ,sum=0;
      // cin>>n>>r;
      // std::vector<int> v(n),t(n);
      // for(int i =0;i<n ;i++) cin>>v[i];
      // for(int i=0;i<n;i++ )
      // {
      //   int x;cin>>x;
      //   sum+=x;
      // }
      //   int time=0;
      // for(int i=1;i<n;i++)
      // {
      //   time = time + v[i] -v[i-1] ;
      // }

      // time=time*r;

      // cout<<sum-time<<nline;
      set<ll> sq ;
      for(ll i=1 ;i< 200 ;i++) 
      {
        sq.insert(i*i) ;
      }
      read(n);
      int flag=0;
      
      for(int i=0;i<n;i++)
      {
        int x;
        cin>>x ;
        if(!sq.count(x))
        {
          flag=1;
        }
      }
      if(flag)cout<<"YES"<<nline;

      else cout<<"NO"<<nline;

 

     }
   }