Pagini recente » Borderou de evaluare (job #1569400) | Cod sursa (job #638793) | Cod sursa (job #2306834) | Cod sursa (job #1022349) | Cod sursa (job #1612724)
#include <fstream>
#include <iomanip>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
int n,k,nr,n_k,cn,ck;
float s;
float v[30];
int x[30];
void calcnr()
{int aux=1;
for(int i=1;i<=n;i++)
{aux*=i;
if(i==n-k && n-k>0)
n_k=aux;
if(i==n)
cn=aux;
if(i==k)
ck=aux;
}
nr=cn/ck;
nr=nr/n_k;
}
void calcs()
{
for(int i=1;i<n;i++)
{
float sp=0;
for(int j=i+1;j<=n;j++)
{
sp+=(float)v[j];
}
sp*=v[i];
s+=sp;
}
}
int main()
{
fin>>n>>k;
for(int i=1;i<=n;i++)
fin>>v[i];
calcnr();
calcs();
fout<<setprecision(6)<<(float)s/nr;
}