Îți atașez soluția. Baftă!
# include <fstream>
using namespace std;
int main() {
ifstream fin( "eureni.in" );
ofstream fout( "eureni.out" );
int n, e, s, t, p, x, i;
fin >> s >> n >> e;
x = 1;
for ( i = 0; i < n; i ++ )
x *= e;
t = 0;
while ( x > 0 ) {
p = 0;
while ( s >= x ) {
p ++;
s -= x;
}
if ( p > 0 )
fout << x << ' ' << p << endl;
t += p;
x /= e;
}
fout << t;
fin.close();
fout.close();
return 0;
}