#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int bin_src(int *arr, int j, int target) {
int l=0, r=j-1, m;
while(l<=r) {
m=l+(r-l)/2;
if(arr[m]==target) return 1;
else if(arr[m]<target) l=m+1;
else r=m-1;
}
return 0;
}
int main() {
int n, k, a[100005], b[100005], j=0;
scanf("%d%d", &n, &k);
for(int i=0; i<n; i++) scanf("%d", &a[i]);
sort(a, a+n);
for(int i=0; i<n; i++) if(a[i]%k!=0 || bin_src(b, j, a[i]/k)==0) b[j]=a[i], j++;
printf("%d", j);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IGJpbl9zcmMoaW50ICphcnIsIGludCBqLCBpbnQgdGFyZ2V0KSB7CglpbnQgbD0wLCByPWotMSwgbTsKCXdoaWxlKGw8PXIpIHsKCQltPWwrKHItbCkvMjsKCQlpZihhcnJbbV09PXRhcmdldCkgcmV0dXJuIDE7CgkJZWxzZSBpZihhcnJbbV08dGFyZ2V0KSBsPW0rMTsKCQllbHNlIHI9bS0xOwoJfQoJcmV0dXJuIDA7Cn0KCmludCBtYWluKCkgewoJaW50IG4sIGssIGFbMTAwMDA1XSwgYlsxMDAwMDVdLCBqPTA7CglzY2FuZigiJWQlZCIsICZuLCAmayk7Cglmb3IoaW50IGk9MDsgaTxuOyBpKyspIHNjYW5mKCIlZCIsICZhW2ldKTsKCXNvcnQoYSwgYStuKTsKCWZvcihpbnQgaT0wOyBpPG47IGkrKykgaWYoYVtpXSVrIT0wIHx8IGJpbl9zcmMoYiwgaiwgYVtpXS9rKT09MCkgYltqXT1hW2ldLCBqKys7CglwcmludGYoIiVkIiwgaik7CglyZXR1cm4gMDsKfQ==