E greu sati explic, dar trebuie ca numerele transformate din sistemul 10 in sistemul k, sa contina doar cifre de 0 si 1. (De exemplu (37)10=(1101)3, contine doar 1 si 0 deci poate fi scris; (6)10=(20)2, contine si alte cifre in afara de 1 si 0, deci nu poate fi scris).
#include <bits/stdc++.h>
using namespace std;
int n,k,x,nr;
int main()
{
cin >> n >> k;
for(int i=1;i<=n;i++)
{
cin >> x;
int c=1;
while(x!=0)
{
if(x%k>1)
{
c=0;
break;
}
x/=k;
}
if(c) nr++;
}
cout << nr;
return 0;
}