Cod sursa(job #163532)

Utilizator hulparuadrianhulparu adrian hulparuadrian Data 22 martie 2008 14:43:16
Problema Progresii Scor 0
Compilator cpp Status done
Runda preONI 2008, Runda Finala, Clasa a 9-a Marime 0.84 kb
#include<iostream>
#include<fstream>

using namespace std;
int n;
double  p[100001],x[100001],k;
ifstream f("progresii.in");
ofstream g("progresii.out");  

int main()
{
   double l;
   int m,i;
    f>>n>>m>>k>>l;
    double sum=0;
    for(int i=1;i<=n;i++)
    {f>>p[i];p[i]=l-p[i];sum+=(double)p[i]/m;if (sum>k) {g<<"-1";return 0;}}
    f.close();
 
    i=1;x[i]=0;
    while(i>0)
    {while(x[i]<m)
    {
               x[i]++;
               if (i==n) 
              { 
        
double sol=0;
       for(int y=1 ; y<=n; y++)
             sol+=(double)p[y]/x[y];               
             if (sol<=k){           {for(int u=1;u<=n;u++) g<<x[u]<<"\n";}return 0;}
               }      
                  else {i++;x[i]=0;}        
               }
               i--;
               }
    g.close();
    return 0;
    }