Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdio>
- #include <algorithm>
- #include <cmath>
- #include <fstream>
- #define ld long double
- #define ll long long
- using namespace std;
- // Cap {} tuong duong (begin end)
- int n, x, be, en, minn[1000001];
- ll a[1000001];// aray of long long
- ll v; // var v : long long (Trong pascal hnhu co moi kieu long)
- int main(){
- freopen("ps.inp","r",stdin); //assign(...)
- freopen("ps.out","w",stdout);// assign(...)
- ios_base::sync_with_stdio(false);// Khong quan trong
- cin.tie(NULL);
- cout.tie(0);
- cin >> n;
- for(int i = 1; i <= n; i++){ // for i := 1 to n do
- cin >> a[i];
- a[i] += a[i-1]; // a[i] := a[i] + a[i - 1];
- v = min(v, a[i]); // if v > a[i] then v := a[i];
- if(v == a[i]) minn[i] = i;
- else minn[i] = minn[i - 1];
- }
- int i = minn[n - 1], z = n;
- while(true){ // while 1 = 1 then
- while(z > i && a[z] <= a[i]) z--;
- if(z - i > en - be){
- en = z;
- be = i;
- }
- if(i == 0) break;
- i = minn[i - 1];
- }
- cout << be + 1 << " " << en; // write(be + 1, ' ', en);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement