Pagini recente » Cod sursa (job #65180) | Cod sursa (job #2581442) | Cod sursa (job #1939140) | Cod sursa (job #2734274) | Cod sursa (job #2092801)
#include <iostream>
#include <cstdio>
using namespace std;
const int L = 30;
int r,p,q;
int pp(int r){
int nr=0;
while( r >= q ){
nr=nr+r/q;
r=r/q;
}
return nr;
}
int main()
{
FILE *fin, *fout;
int n, i, pas, p;
fin = fopen( "gfact.in", "r" );
fout = fopen( "gfact.out", "w" );
fscanf(fin, "%d%d", &p, &q );
pas = 1<<L;
r = 0;
while( pas > 0 ){
if( pp(r+pas) < q-1 )
r = r + pas;
pas = pas / 2;
}
fprintf( fout, "%d", r-1 );
fclose(fin);
fclose(fout);
return 0;
}