nod1060
求反素数,模板题。
注意不要溢出long long。
void dfs(ll cur,ll cnt,ll lim,ll k)
{
if(cur>MAX)return;
if(divn<cnt)divn=cnt,val=cur;
if(divn==cnt&&val>cur)val=cur;
for(ll i=1;i<=lim;i++)
{
cur*=pri[k];
if(cur%pri[k]!=0||cur>MAX)return;
dfs(cur,cnt*(i+1),i,k+1);
}
}