Thứ Hai, 22 tháng 5, 2023

szero c++

#include <bits/stdc++.h>
using namespace std;

int n,t;
struct pt
{
    long long gt,cs;
};
pt s[100001];
int a[100006];

bool ss(pt u,pt v)
{
    if(u.gt<v.gt) return true;
    if(u.gt>v.gt) return false;
    if(u.cs<v.cs) return true;
    if(u.gt<v.gt) return false;
    return false;
}

void nhap()
{
    s[0].gt=0;s[0].cs=0;
    cin >> n ;
    for(int i = 1; i <= n; ++i)
    {
        cin >> t ;
        s[i].gt=s[i-1].gt+t;
        s[i].cs=i;
    }
}

void xuly(){
    sort(s,s+1+n,ss);    //xai ham sort co san trong c++
    int k=0,v=0,u=0;
    for(int i = 1;i <= n;++i)
    {
        if(s[i].gt!=s[i-1].gt) k = i;
        if(s[i].cs-s[k].cs>s[v].cs-s[u].cs){
            u=k;v=i;
        }
    }
    if(s[v].cs==0) {cout<<-1;}
    else{
        cout << s[u].cs+1<<" "<<s[v].cs;}
}
int main()
{
    //freopen("szero.inp","r",stdin);
    //freopen("szero.out","w",stdout);
    nhap();
    xuly();
}

Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.