#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define vctr vector<ll>
#define vp vector<pair<ll, ll>>
int main()
{
ll t;
cin >> t;
while(t--)
{
ll n, i, j, k;
cin >> n >> k;
vctr a(n);
for(i=0; i<n; i++)
{
cin >> a[i];
}
ll tracker[64]={0}, flag=1;
for(i=0; i<n; i++)
{
while(a[i]!=0)
{
ll value=a[i], cnt=0, mul=1;
while(value>0)
{
value/=k;
cnt++;
mul*=k;
}
cnt--;
mul/=k;
if(cnt<0)break;
if(cnt>=0 && tracker[cnt]==0)
{
tracker[cnt]++;
a[i]-=mul;
}else{
break;
}
}
if(a[i]!=0){
flag=0;
cout << "NO" << endl;
break;
}
}
if(flag==1)cout << "YES" << endl;
}
}
2148. Count Elements With Strictly Smaller and Greater Elements | 2149. Rearrange Array Elements by Sign |
2150. Find All Lonely Numbers in the Array | 2151. Maximum Good People Based on Statements |
2144. Minimum Cost of Buying Candies With Discount | Non empty subsets |
1630A - And Matching | 1630B - Range and Partition |
1630C - Paint the Middle | 1630D - Flipping Range |
1328A - Divisibility Problem | 339A - Helpful Maths |
4A - Watermelon | 476A - Dreamoon and Stairs |
1409A - Yet Another Two Integers Problem | 977A - Wrong Subtraction |
263A - Beautiful Matrix | 180C - Letter |
151A - Soft Drinking | 1352A - Sum of Round Numbers |
281A - Word Capitalization | 1646A - Square Counting |
266A - Stones on the Table | 61A - Ultra-Fast Mathematician |
148A - Insomnia cure | 1650A - Deletions of Two Adjacent Letters |
1512A - Spy Detected | 282A - Bit++ |
69A - Young Physicist | 1651A - Playoff |