欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

CodeForces - 1089G Guest Student (枚举)

程序员文章站 2022-06-05 13:42:10
...

注意k<=a[ 7 ] 的时候:

CodeForces - 1089G Guest Student (枚举)


int a[MX];
inline void solve()
{
    int k;cin>>k;
    rpp(i,7) cin>>a[i];
    rpp(i,7) a[i]+=a[i-1];
    if(k<=a[7])
    {
        int ans=7;
        for(int i=1;i<=7;++i)
            for(int j=i;j<=7;++j)
                if(a[j]-a[i-1]>=k) ans=min(ans,j-i+1);
        for(int i=7;i>=1;--i)
        {
            for(int j=1;j<=i;++j)
            {
                if(a[7]-a[i-1]+a[j]>=k) 
                ans=min(ans,7-i+1+j);
            }
        }
        cout<<ans<<endl;
        return;
    }
    ll ans=k*7;
    rpp(i,8) rep(j,8)
    {
        
        ll tag=7-i+1+j;
        int yu=k-(a[7]-a[i-1]+a[j]);
        if(yu>0) tag+=(yu/a[7]+(yu%a[7]?1:0))*7;
        ans=min(ans,tag);
    }
    cout<<ans<<endl;
}