Don't like ads? PRO users don't see any ads ;-)
Guest

xoxii

By: a guest on May 21st, 2012  |  syntax: C++  |  size: 0.62 KB  |  hits: 19  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. bool cumul(const vector<int>& numeros, int i){
  6.         int suma = 0;
  7.         for (int j = 1; j <= i; ++j) {
  8.                 suma += numeros[i - j];
  9.                 if (suma == numeros[i]) return true;
  10.                 else if (suma > numeros[i]) return false;
  11.         }
  12.         return false;
  13. }
  14.  
  15. int main() {
  16.         int n;
  17.         while (cin >> n) {
  18.                 vector<int> numeros(n);
  19.                 int count = 0;
  20.                 int max = 0;
  21.                 for (int i = 0; i < n; ++i) {
  22.                         cin >> numeros[i];
  23.                 }
  24.                 for (int i = 1; i < n; ++i) {
  25.                         if (cumul(numeros, i)) {
  26.                                 ++ count;
  27.                                 if (count > max) max =  count;
  28.                         }
  29.                         else count = 0;
  30.                 }
  31.         cout << max << endl;
  32.         }
  33. }