Advertisement
Guest User

Untitled

a guest
Feb 17th, 2018
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.83 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. long long n,zly,minimum,kwadrat,L,P,S,b,wynik;
  5. long long t[510000],suma;
  6.  
  7. int main()
  8. {
  9.     cin>>n;
  10.  
  11.     for(int i = 1; i <= n; i++)
  12.     {
  13.         cin>>t[i];
  14.         minimum = max(minimum,t[i]);
  15.     }
  16.     zly = max(n,minimum);
  17.     L = minimum;
  18.     P = zly;
  19.  
  20.     for(int i = 1; i <= zly - minimum; i++)
  21.     {
  22.         kwadrat = 1;
  23.         S = (L+P) / 2;
  24.         b = S;
  25.         for(int j = 1; j <= n; j++)
  26.         {
  27.             if(t[j] > b)
  28.             {
  29.                 kwadrat++;
  30.                 b = S - t[j];
  31.             }
  32.             else b -= t[j];
  33.             //cout<<t[j]<<" "<<b<<" "<<kwadrat<<endl;
  34.         }
  35.         //cout<<kwadrat<<endl;
  36.         if(kwadrat > S) L = S+1;
  37.         else if(kwadrat < S) P = S-1;
  38.         else { cout<<S; return 0; }
  39.     }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement