#include<bits/stdc++.h>
using namespace std;
#define ull unsigned long long
ull l,r,w;
int main ()
{
scanf("%llu%llu%llu",&l,&r,&w);
if (w == 1)
{
if(l==1)
{
printf ("1") ;
return 0;
}
else if( l>1 ) printf("-1");
}
if(w == 0 )
{
printf("0");
return 0;
}
bool flag=0;
for(int i=0;i<=63;i++)
{
ull ans=pow(w,i);
if(ans>=l&&ans<=r)
{
printf ("%llu " , ans ) ;
flag=1;
}
}
if(flag==0) printf("-1");
return 0;
}