Submission #896022

# Submission time Handle Problem Language Result Execution time Memory
896022 2023-12-31T12:42:09 Z AndrijaM Ice Hockey World Championship (CEOI15_bobek) C++14
70 / 100
677 ms 651344 KB
#include <bits/stdc++.h>
using namespace std;

const long long maxn =41;
const long long maxs=1e6+20;
const long long mod=1e9+7;
const long long logn=25;

long long n,m;
long long x[maxn];
long long dp[maxn][maxs];

long long f(long long idx,long long s)
{
    if(idx==n)
    {
        if(s<=m)
        {
            return 1;
        }
        return 0;
    }
    if(dp[idx][s]!=-1)
    {
        return dp[idx][s];
    }
    long long rez=0;
    rez+=f(idx+1,s);
    if(s+x[idx]<=m)
    rez+=f(idx+1,s+x[idx]);
    return dp[idx][s]=rez;
}

int main()
{
    ios_base::sync_with_stdio(false); cin.tie(0);
    cin>>n>>m;
    for(long long i=0;i<n;i++)
    {
        cin>>x[i];
    }
    if(n<=22)
    {
        long long ans=0;
        for(long long i=0;i<(1<<n);i++)
        {
            long long sum=0;
            for(long long bit=0;bit<n;bit++)
            {
                if(i&(1<<bit))
                {
                    sum+=x[bit];
                }
            }
            if(sum<=m)
            {
                ans++;
            }
        }
        cout<<ans<<endl;
    }
    else
    {
        memset(dp,-1,sizeof dp);
        cout<<f(0,0)<<endl;
    }
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 600 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 8 ms 348 KB Output is correct
2 Correct 4 ms 348 KB Output is correct
3 Correct 8 ms 456 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 4 ms 348 KB Output is correct
6 Correct 69 ms 348 KB Output is correct
7 Correct 8 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 64 ms 436 KB Output is correct
2 Correct 15 ms 512 KB Output is correct
3 Correct 4 ms 348 KB Output is correct
4 Correct 5 ms 348 KB Output is correct
5 Correct 69 ms 348 KB Output is correct
6 Correct 8 ms 348 KB Output is correct
7 Correct 8 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 42 ms 321124 KB Output is correct
2 Correct 336 ms 321372 KB Output is correct
3 Correct 677 ms 321364 KB Output is correct
4 Correct 302 ms 321364 KB Output is correct
5 Correct 36 ms 321360 KB Output is correct
6 Correct 39 ms 321360 KB Output is correct
7 Correct 37 ms 321372 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 45 ms 321360 KB Output is correct
2 Correct 98 ms 321380 KB Output is correct
3 Correct 41 ms 321376 KB Output is correct
4 Correct 0 ms 344 KB Output is correct
5 Correct 36 ms 321164 KB Output is correct
6 Correct 52 ms 321360 KB Output is correct
7 Correct 36 ms 321196 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 290 ms 321372 KB Output is correct
2 Correct 136 ms 321372 KB Output is correct
3 Correct 129 ms 321376 KB Output is correct
4 Correct 16 ms 348 KB Output is correct
5 Correct 37 ms 321360 KB Output is correct
6 Correct 45 ms 321364 KB Output is correct
7 Correct 36 ms 321364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Runtime error 280 ms 651236 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 296 ms 651320 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 279 ms 651344 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -