Cod sursa(job #109580)
| Utilizator | Data | 25 noiembrie 2007 11:58:24 | |
|---|---|---|---|
| Problema | Aliens | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | preONI 2008, Runda 1, Clasa a 10-a | Marime | 0.51 kb |
#include<cstdio>
struct fractie{
long num,nrm;
}a[100];
long i,n,x,y,max,pnr,pnm;
int main(){
freopen("aliens.in","r",stdin);
freopen("aliens.out","w",stdout);
scanf("%ld",&n);
for(i=0;i<n;i++)
scanf("%ld%ld",&a[i].nrm,&a[i].num);
max=0;
for(x=1;x<(1 << n);x++){
pnr=1;pnm=1;y=x;
for(i=0;y!=0;i++){
if(y%2==1){
pnr*=a[i].nrm;
pnm*=a[i].num;
}
y/=2;
}
if(pnr%pnm==0 && pnr/pnm>max)max=pnr/pnm;
}
printf("%ld\n",max);
fclose(stdin);
fclose(stdout);
return 0;
}
