Cod sursa(job #1019711)

Utilizator leontinLeontin leontin Data 31 octombrie 2013 20:25:32
Problema Transport Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
using namespace std;
 
ifstream f ("transport.in");
ofstream g("transport.out");
 
int n, k;
int v[16001];
 
int vf(int masa)
{
  int nr = 1; int marfa = 0;
  for (int i = 1; i <= n; ++i)
    {
      if (marfa + v[i] <= masa)
    marfa += v[i];
      else
    {
      marfa = 0;
      --i;
      ++nr;
    }
    }
   
  if (nr <= k)
    return 1;
  return 0;
}



int main()
{
 f>>n>>k;
 
  int suma = 0;
  for (int i = 1; i <= n; ++i)
    {
      f >> v[i];
      suma += v[i];}
 suma=suma/3;
 while(vf(suma)==0)
	 suma++;
 g<<suma; 
  return 0;
}