Submission #947269

# Submission time Handle Problem Language Result Execution time Memory
947269 2024-03-15T20:36:18 Z NValchanov Boat (APIO16_boat) C++17
9 / 100
2000 ms 350152 KB
#include<bits/stdc++.h>

#define endl '\n'
#define a first
#define b second

using namespace std;

typedef long long ll;

const int MAXN = 512;
const int MAXA = 1e6 + 10;
const int MOD = 1e9 + 7;

int n,cnt;
pair<int,int> s[MAXN];
int dp[MAXN];
int pref[MAXN];
unordered_map <int,int> pos;

void read()
{
    cin >> n;
    for(int i = 1; i <= n; i++)
    {
        cin >> s[i].a >> s[i].b;
    }
    s[0].a = s[0].b = -1;
}

void fill_pos()
{
    set <int> st;

    for(int i = 1; i <= n; i++)
    {
        int from = s[i].a;
        int to = s[i].b;

        for(int j = from; j <= to; j++)
        {
            st.insert(j);
        }
    }

    int last = -1;

    for(int cur : st)
    {
        if(cur == last)
            continue;

        pos[cur] = ++cnt;
        last = cur;
    }
    /**
    for(auto x : pos)
    {
        cout << x.first << " " << x.second << endl;
    }
    */
}

void fill_dp()
{
    for(int i = 1; i <= n; i++)
    {
        int from = pos[s[i].a];
        int to = pos[s[i].b];
        for(int j = to; j >= from; j--)
        {
            dp[j] = (dp[j] + pref[j - 1] + 1 /** za nulata **/) % MOD;
        }
        for(int j = from; j <= cnt; j++)
        {
            pref[j] = (pref[j - 1] + dp[j]) % MOD;
        }
    }
}

int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr);
	cout.tie(nullptr);

    read();
    fill_pos();
    fill_dp();

    cout << pref[cnt] << endl;

	return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 600 KB Output is correct
2 Correct 2 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 1 ms 508 KB Output is correct
5 Correct 1 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 2 ms 516 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 1 ms 348 KB Output is correct
10 Correct 1 ms 348 KB Output is correct
11 Correct 1 ms 344 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 344 KB Output is correct
15 Correct 1 ms 464 KB Output is correct
16 Correct 1 ms 348 KB Output is correct
17 Correct 1 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
# Verdict Execution time Memory Grader output
1 Correct 1 ms 600 KB Output is correct
2 Correct 2 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 1 ms 508 KB Output is correct
5 Correct 1 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 2 ms 516 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 1 ms 348 KB Output is correct
10 Correct 1 ms 348 KB Output is correct
11 Correct 1 ms 344 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 344 KB Output is correct
15 Correct 1 ms 464 KB Output is correct
16 Correct 1 ms 348 KB Output is correct
17 Correct 1 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 Runtime error 19 ms 1616 KB Execution killed with signal 11
22 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 2035 ms 350152 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 600 KB Output is correct
2 Correct 2 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 1 ms 508 KB Output is correct
5 Correct 1 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 2 ms 516 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 1 ms 348 KB Output is correct
10 Correct 1 ms 348 KB Output is correct
11 Correct 1 ms 344 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 344 KB Output is correct
15 Correct 1 ms 464 KB Output is correct
16 Correct 1 ms 348 KB Output is correct
17 Correct 1 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 Runtime error 19 ms 1616 KB Execution killed with signal 11
22 Halted 0 ms 0 KB -