Petr stands in line of *n* people, but he doesn't know exactly which position he occupies. He can say that there are no less than *a* people standing in front of him and no more than *b* people standing behind him. Find the number of different positions Petr can occupy.
The only line contains three integers *n*, *a* and *b* (0 ≤ *a*, *b* &lt; *n* ≤ 100).
3 1 1
2
5 2 3
3
5 4 0
1
6 5 5
1
9 4 3
4
11 4 6
7
13 8 7
5
14 5 5
6
16 6 9
10
20 13 17
7
22 4 8
9
23 8 14
15
26 18 22
8
28 6 1
2
29 5 23
24
32 27 15
5
33 11 5
6
37 21 15
16
39 34 33
5
41 27 11
12
42 25 16
17
45 7 43
38
47 16 17
18
49 11 37
38
51 38 39
13
52 29 7
8
56 43 12
13
58 57 28
1
59 12 39
40
62 9 52
53
63 29 44
34
65 30 22
23
66 27 38
39
71 33 53
38
73 14 12
13
73 37 35
36
76 69 44
7
79 25 20
21
81 60 20
21
81 79 14
2
84 0 42
43
88 79 8
9
90 76 59
14
92 2 22
23
94 5 88
89
94 62 48
32
96 22 72
73
100 11 88
89
100 81 91
19
1 0 0
1
#include <bits/stdc++.h>
#define ll long long
#define str string
#define vi vector<int>
#define vvi vector<vector<int>>
using namespace std;

class Graph{
    vvi g, gr;
    vi vis, ord;

    void dfs1(int v){
        vis[v] = 1;
        for (int to : gr[v])
            if(!vis[to])
                dfs1(to);
        ord.push_back(v);
    }

    void dfs2(int v, int comp){
        vis[v] = comp;
        for (int to: g[v])
            if (!vis[to])
                dfs2(to, comp);
    }

public:
    Graph(int vertexCount){
        g.resize(vertexCount);
        gr.resize(vertexCount);
    }

    void addEdge(int a, int b){
        g[a].push_back(b);
        gr[b].push_back(a);
    }

    vi findScc(){
        vis.assign(g.size(), 0);
        for (int v = 0; v < g.size(); v++)
            if(!vis[v])
                dfs1(v);
        reverse(ord.begin(), ord.end());

        vis.assign(g.size(), 0);
        int sccC = 0;
        for( int v : ord)
            if (!vis[v])
                dfs2(v, ++sccC);
        return vis;
    }
};

int chek(char a){
    if (a == 'A') return 1;
    if (a == 'B') return 10;
    if (a == 'C') return 100;
    if (a == 'D') return 1000;
    if (a == 'E') return 10000;
}

int main() {
    ios::sync_with_stdio(0);
    cin.tie(0), cout.tie(0);
    ll n, a, b, m, t, c = 0;
    cin >> n >> a >> b;
    int f = n - 1, l = 0;
    while(f != -1 && f >= a && l <= b){
        c++;
        l++;
        f--;
    }
    cout << c;
}
