Pagini recente » Cod sursa (job #761729) | Cod sursa (job #48895) | Cod sursa (job #163326) | Cod sursa (job #2324445) | Cod sursa (job #138320)
Cod sursa(job #138320)
#include<fstream.h>
unsigned long nr,n,i,k,x,j,m;
ifstream f("factoriale.in");
ofstream g("factoriale.out");
unsigned long vf[50];
void frecv(int n)
{
/*
if (vf[2]%k==0) vf[2]=0;
if (vf[3]%k==0) vf[3]=0;
if (vf[5]%k==0) vf[5]=0;
if (vf[7]%k==0) vf[7]=0;
if (vf[11]%k==0) vf[11]=0;
if (vf[13]%k==0) vf[13]=0;
if (vf[17]%k==0) vf[17]=0;
if (vf[19]%k==0) vf[19]=0;
if (vf[23]%k==0) vf[23]=0;
if (vf[29]%k==0) vf[29]=0;
if (vf[31]%k==0) vf[31]=0;
if (vf[37]%k==0) vf[37]=0;
if (vf[41]%k==0) vf[41]=0;
if (vf[43]%k==0) vf[43]=0;
if (vf[47]%k==0) vf[47]=0;
if (vf[53]%k==0) vf[53]=0;
if (vf[59]%k==0) vf[59]=0;
if (vf[61]%k==0) vf[61]=0;
if (vf[67]%k==0) vf[67]=0;
if (vf[71]%k==0) vf[71]=0;
if (vf[73]%k==0) vf[73]=0;
*/
if (n==2) {
vf[2]++; }
if (n==3) {
vf[3]++; }
if (n==4) {
vf[2]=vf[2]+2; }
if (n==5) {
vf[5]++; }
if (n==6) {
vf[2]++; vf[3]++; }
if (n==7) {
vf[7]++; }
if (n==8) {
vf[2]++; vf[2]++; vf[2]++; }
if (n==9) {
vf[3]++; vf[3]++; }
if (n==10) {
vf[2]++; vf[5]++; }
if (n==11) {
vf[11]++; }
if (n==12) {
vf[2]++; vf[2]++; vf[3]++; }
if (n==13) {
vf[13]++; }
if (n==14) {
vf[2]++; vf[7]++; }
if (n==15) {
vf[3]++; vf[5]++; }
if (n==16) {
vf[2]++; vf[2]++; vf[2]++; vf[2]++; }
if (n==17) {
vf[17]++; }
if (n==18) {
vf[2]++; vf[3]++; vf[3]++; }
if (n==19) {
vf[19]++; }
if (n==20) {
vf[2]++; vf[2]++; vf[5]++; }
if (n==21) {
vf[3]++; vf[7]++; }
if (n==22) {
vf[2]++; vf[11]++; }
if (n==23) {
vf[23]++; }
if (n==24) {
vf[2]++; vf[2]++; vf[2]++; vf[3]++; }
if (n==25) {
vf[5]++; vf[5]++;}
if (n==26) {
vf[2]++; vf[13]++; }
if (n==27) {
vf[3]++; vf[3]++; vf[3]++; }
if (n==28) {
vf[2]++; vf[2]++; vf[7]++; }
if (n==29) {
vf[29]++; }
if (n==30) {
vf[2]++; vf[3]++; vf[5]++; }
if (n==31) {
vf[31]++; }
if (n==32) {
vf[2]++; vf[2]++; vf[2]++; vf[2]++; vf[2]++; }
if (n==33) {
vf[3]++; vf[11]++; }
if (n==34) {
vf[2]++; vf[17]++; }
if (n==35) {
vf[5]++; vf[7]++; }
if (n==36) {
vf[2]++; vf[2]++; vf[3]++; vf[3]++; }
if (n==37) {
vf[37]++; }
if (n==38) {
vf[2]++; vf[19]++; }
if (n==39) {
vf[3]++; vf[13]++; }
if (n==40) {
vf[2]++; vf[2]++; vf[2]++; vf[5]++; }
if (n==41) {
vf[41]++; }
if (n==42) {
vf[2]++; vf[3]++; vf[7]++; }
if (n==43) {
vf[43]++; }
if (n==44) {
vf[2]++; vf[2]++; vf[11]++; }
if (n==45) {
vf[3]++; vf[3]++; vf[5]++; }
if (n==46) {
vf[2]++; vf[23]++; }
if (n==47) {
vf[47]++; }
if (n==49) {
vf[7]++; vf[7]++; }
if (n==48) {
vf[2]++; vf[2]++; vf[2]++; vf[2]++; vf[3]++; }
if (n==50) {
vf[2]++; vf[5]++; vf[5]++; }
if (n==51) {
vf[3]++; vf[17]++; }
if (n==52) {
vf[2]++; vf[2]++; vf[13]++; }
if (n==53) {
vf[53]++; }
if (n==54) {
vf[2]++; vf[3]++; vf[3]++; vf[3]++; }
if (n==55) {
vf[5]++; vf[11]++; }
if (n==56) {
vf[2]++; vf[2]++; vf[2]++; vf[7]++; }
if (n==57) {
vf[3]++; vf[19]++; }
if (n==58) {
vf[2]++; vf[29]++; }
if (n==59) {
vf[59]++; }
if (n==60) {
vf[2]++; vf[2]++; vf[3]++; vf[5]++; }
if (n==61) {
vf[61]++; }
if (n==62) {
vf[2]++; vf[31]++; }
if (n==63) {
vf[3]++; vf[3]++; vf[7]++; }
if (n==64) {
vf[2]++; vf[2]++; vf[2]++;
vf[2]++; vf[2]++; vf[2]++;
}
if (n==65) {
vf[5]++; vf[13]++; }
if (n==66) {
vf[2]++; vf[3]++; vf[11]++; }
if (n==67) {
vf[67]++; }
if (n==68) {
vf[2]++; vf[2]++; vf[17]++; }
if (n==69) {
vf[3]++; vf[23]++; }
if (n==70) {
vf[2]++; vf[5]++; vf[7]++; }
if (n==71) {
vf[71]++; }
if (n==72) {
vf[2]++; vf[2]++; vf[2]++; vf[3]++; vf[3]++; }
if (n==73) {
vf[73]++; }
if (n==74) {
vf[2]++; vf[37]++; }
if (n==75) {
vf[3]++; vf[5]++; vf[5]++; }
if (n==76) {
vf[2]++; vf[2]++; vf[19]++; }
if (n==77) {
vf[7]++; vf[11]++; }
if (n==78) {
vf[2]++; vf[3]++; vf[13]++; }
if (n==79) {
vf[79]++; }
if (n==80) {
vf[2]++; vf[2]++; vf[2]++; vf[2]++; vf[5]++; }
if (n==81) {
vf[3]++; vf[3]++; vf[3]++; vf[3]++; }
if (n==82) {
vf[2]++; vf[41]++; }
if (n==83) {
vf[83]++; }
if (n==84) {
vf[2]++; vf[2]++; vf[3]++; vf[7]++; }
if (n==85) {
vf[5]++; vf[17]++; }
if (n==86) {
vf[2]++; vf[43]++; }
if (n==87) {
vf[3]++; vf[29]++; }
if (n==88) {
vf[2]++; vf[2]++; vf[2]++; vf[11]++; }
if (n==89) {
vf[89]++; }
if (n==90) {
vf[2]++; vf[3]++; vf[3]++; vf[5]++; }
if (n==91) {
vf[7]++; vf[13]++; }
if (n==92) {
vf[2]++; vf[2]++; vf[23]++; }
if (n==93) {
vf[3]++; vf[31]++; }
if (n==94) {
vf[2]++; vf[47]++; }
if (n==95) {
vf[5]++; vf[19]++; }
if (n==96) {
vf[2]++; vf[2]++; vf[2]++; vf[2]++; vf[2]++; vf[3]++; }
if (n==97) {
vf[97]++; }
if (n==98) {
vf[2]++; vf[7]++; vf[7]++; }
if (n==99) {
vf[3]++; vf[3]++; vf[11]++; }
if (n==100) {
vf[2]++; vf[2]++; vf[5]++; vf[5]++; }
}
int main()
{
nr=1;
f>>n>>k;
for(i=1;i<=n;i++)
{
f>>x;
for(j=1;j<=x;j++)
frecv(j);
}
/* g<<"vf = ";
for (i=1;i<=5;i++)
g<<vf[i]<<" ";
g<<"\n";
*/
for(i=1;i<=100;i++)
{
m=vf[i]%k;
if (m>0) {
// g<<"m ="<<m<<"si vf[i] este "<<vf[i] <<"\n";
for (j=m+1;j<=k;j++)
nr=nr*i;
// g<<"nr ="<<nr<<"\n";
}
}
g<<nr;
f.close();
g.close();
return 0;
}