Submission #867471

# Submission time Handle Problem Language Result Execution time Memory
867471 2023-10-28T12:54:32 Z HuyQuang_re_Zero Rice Hub (IOI11_ricehub) C++14
100 / 100
14 ms 3680 KB
#include <bits/stdc++.h>
#define ll long long
#define db long double
#define II pair <ll,ll>
#define III pair <ll,II>
#define IV pair <vector <int>,vector <int> >
#define fst first
#define snd second
#define BIT(x,i) ((x>>i)&1)
#define pi acos(-1)
#define to_radian(x) (x*pi/180.0)
#define to_degree(x) (x*180.0/pi)
#define maxn 200005
#include "ricehub.h"
using namespace std;
struct International_Olympiad_in_Informatics
{
    ll i,f[maxn];
    ll SUM(int l,int r) { return f[r]-f[l-1]; }
    int Work(int n,int X,int x[],ll m)
    {
        int res=0;
        for(i=1;i<=n;i++) f[i]=f[i-1]+x[i];
        for(i=1;i<=n;i++)
        {
            int l=1,r=min(i,n-i+1);
            while(l<r)
            {
                int mid=(l+r+1)>>1;
                if(SUM(i,i+mid-1)-SUM(i-mid+1,i)<=m)
                    l=mid;
                else r=mid-1;
            }
            ll k=SUM(i,i+l-1)-SUM(i-l+1,i);
            int val=2*l-1+((i>l && k+x[i]-x[i-l]<=m) || (i+l<=n && k+x[i+l]-x[i]<=m));
            res=max(res,val);
        }
        return res;
    }
} IOI;
int besthub(int r,int l,int x[],ll b)
{
    for(int i=r;i>=1;i--) x[i]=x[i-1];
    return IOI.Work(r,l,x,b);
}
/*
int main()
{
    freopen("ricehub.inp","r",stdin);
    freopen("ricehub.out","w",stdout);
    ios_base::sync_with_stdio(0);
    cin.tie(0); cout.tie(0);
    int r,l,b;
    cin>>r>>l;
    int x[r+1];
    for(int i=0;i<r;i++) cin>>x[i];
    cin>>b;
    cout<<besthub(r,l,x,b);
}*/
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2396 KB Output is correct
2 Correct 1 ms 2396 KB Output is correct
3 Correct 0 ms 2396 KB Output is correct
4 Correct 1 ms 2392 KB Output is correct
5 Correct 1 ms 2392 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2396 KB Output is correct
2 Correct 1 ms 2396 KB Output is correct
3 Correct 1 ms 2396 KB Output is correct
4 Correct 1 ms 2396 KB Output is correct
5 Correct 1 ms 2648 KB Output is correct
6 Correct 1 ms 2492 KB Output is correct
7 Correct 0 ms 2396 KB Output is correct
8 Correct 1 ms 2552 KB Output is correct
9 Correct 1 ms 2396 KB Output is correct
10 Correct 1 ms 2396 KB Output is correct
11 Correct 1 ms 2396 KB Output is correct
12 Correct 1 ms 2396 KB Output is correct
13 Correct 1 ms 2396 KB Output is correct
14 Correct 0 ms 2396 KB Output is correct
15 Correct 0 ms 2396 KB Output is correct
16 Correct 0 ms 2396 KB Output is correct
17 Correct 1 ms 2396 KB Output is correct
18 Correct 0 ms 2396 KB Output is correct
19 Correct 1 ms 2396 KB Output is correct
20 Correct 0 ms 2396 KB Output is correct
21 Correct 1 ms 2396 KB Output is correct
22 Correct 1 ms 2396 KB Output is correct
23 Correct 1 ms 2396 KB Output is correct
24 Correct 1 ms 2396 KB Output is correct
25 Correct 1 ms 2396 KB Output is correct
26 Correct 0 ms 2396 KB Output is correct
27 Correct 1 ms 2396 KB Output is correct
28 Correct 1 ms 2396 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 2396 KB Output is correct
2 Correct 0 ms 2492 KB Output is correct
3 Correct 1 ms 2396 KB Output is correct
4 Correct 1 ms 2396 KB Output is correct
5 Correct 1 ms 2396 KB Output is correct
6 Correct 1 ms 2392 KB Output is correct
7 Correct 1 ms 2396 KB Output is correct
8 Correct 1 ms 2396 KB Output is correct
9 Correct 1 ms 2396 KB Output is correct
10 Correct 0 ms 2396 KB Output is correct
11 Correct 1 ms 2396 KB Output is correct
12 Correct 1 ms 2396 KB Output is correct
13 Correct 1 ms 2396 KB Output is correct
14 Correct 1 ms 2396 KB Output is correct
15 Correct 1 ms 2396 KB Output is correct
16 Correct 1 ms 2396 KB Output is correct
17 Correct 1 ms 2396 KB Output is correct
18 Correct 1 ms 2396 KB Output is correct
19 Correct 1 ms 2396 KB Output is correct
20 Correct 1 ms 2396 KB Output is correct
21 Correct 1 ms 2396 KB Output is correct
22 Correct 1 ms 2396 KB Output is correct
23 Correct 1 ms 2396 KB Output is correct
24 Correct 1 ms 2392 KB Output is correct
25 Correct 1 ms 2396 KB Output is correct
26 Correct 1 ms 2396 KB Output is correct
27 Correct 1 ms 2396 KB Output is correct
28 Correct 1 ms 2396 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 2652 KB Output is correct
2 Correct 3 ms 2652 KB Output is correct
3 Correct 13 ms 3500 KB Output is correct
4 Correct 12 ms 3676 KB Output is correct
5 Correct 6 ms 2908 KB Output is correct
6 Correct 6 ms 2908 KB Output is correct
7 Correct 11 ms 3420 KB Output is correct
8 Correct 11 ms 3420 KB Output is correct
9 Correct 6 ms 2908 KB Output is correct
10 Correct 6 ms 2760 KB Output is correct
11 Correct 13 ms 3492 KB Output is correct
12 Correct 14 ms 3676 KB Output is correct
13 Correct 7 ms 3116 KB Output is correct
14 Correct 6 ms 3160 KB Output is correct
15 Correct 9 ms 3368 KB Output is correct
16 Correct 9 ms 3260 KB Output is correct
17 Correct 11 ms 3416 KB Output is correct
18 Correct 11 ms 3432 KB Output is correct
19 Correct 11 ms 3680 KB Output is correct
20 Correct 14 ms 3672 KB Output is correct