Submission #905225

# Submission time Handle Problem Language Result Execution time Memory
905225 2024-01-12T19:18:33 Z andrei_iorgulescu Semiexpress (JOI17_semiexpress) C++14
100 / 100
12 ms 6324 KB
#include <bits/stdc++.h>

using namespace std;

#define int long long

int n,m,k,a,b,c,t,s[3005];
int ans = -1;
vector<int>u;

void blabla(int len,int timp,int coef)
{
    int ans2 = 0;
    ///am statii de la 0 la len, unde 0 e statia cu expres
    if (timp < 0)
        return;
    if (coef < 0)
        return;
    if (len < 0)
        return;
    //cout << len << ' ' << timp << ' ' << coef << endl;
    if (coef == k - m)
        ans++;
    else
        ans2++;
    int poz = timp / a + 1;
    poz = min(poz,len + 1);
    if (coef == k - m)
        ans += poz - 1;
    else
        ans2 += poz - 1;
    if (coef != k - m)
        u.push_back(ans2);
    len -= poz;
    timp -= c * poz;
    coef--;
    blabla(len,timp,coef);
}

signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    cin >> n >> m >> k >> a >> b >> c >> t;
    for (int i = 1; i <= m; i++)
        cin >> s[i];
    for (int i = 1; i < m; i++)
    {
        blabla(s[i + 1] - s[i] - 1,t - b * (s[i] - 1),k - m);
    }
    sort(u.begin(),u.end());
    reverse(u.begin(),u.end());
    for (int i = 0; i < min(k - m,(int)u.size()); i++)
        ans += u[i];
    if ((n - 1) * b <= t)
        ans++;
    cout << ans;
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 1 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 1 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 1 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 1 ms 348 KB Output is correct
12 Correct 1 ms 348 KB Output is correct
13 Correct 1 ms 348 KB Output is correct
14 Correct 1 ms 348 KB Output is correct
15 Correct 1 ms 348 KB Output is correct
16 Correct 1 ms 348 KB Output is correct
17 Correct 0 ms 348 KB Output is correct
18 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 1 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 1 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 1 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 1 ms 348 KB Output is correct
12 Correct 1 ms 348 KB Output is correct
13 Correct 1 ms 348 KB Output is correct
14 Correct 1 ms 348 KB Output is correct
15 Correct 1 ms 348 KB Output is correct
16 Correct 1 ms 348 KB Output is correct
17 Correct 0 ms 348 KB Output is correct
18 Correct 1 ms 348 KB Output is correct
19 Correct 1 ms 348 KB Output is correct
20 Correct 1 ms 348 KB Output is correct
21 Correct 1 ms 468 KB Output is correct
22 Correct 2 ms 604 KB Output is correct
23 Correct 12 ms 6324 KB Output is correct
24 Correct 1 ms 348 KB Output is correct
25 Correct 1 ms 348 KB Output is correct
26 Correct 1 ms 348 KB Output is correct
27 Correct 1 ms 348 KB Output is correct
28 Correct 1 ms 348 KB Output is correct
29 Correct 8 ms 5076 KB Output is correct
30 Correct 7 ms 2776 KB Output is correct