# Distinct numbers

You are given a list of N integers, and your task is to calculate the number of *distinct* values in the list.

# Input

The first input line has an integer n: the number of values.

The second line has the integers x1,x2,…,xn.

# Output

Print one integer: the number of distinct values.

# Constraints

1≤n≤2⋅

1≤xi≤1091

# Example

Input:

```
5
2 3 2 2 3
```

Output:

```
2
```

To solve this problem, all we have to do is to just count distinct values which can be done using a set data structure.

A set can be used to solve this problem, which stores the distinct values.

```
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin >> n;
vector<int>v(n);
for(int i=0;i<n;i++)cin >> v[i];
set<int>st;
for(auto it: v)st.insert(it);
cout << st.size();
}
```

That was the first approach, let's see another approach to solve this problem.

The second approach is to use a hashmap to count the number of distinct values.

```
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
cin >> n;
map<int,int>mp;
for(int i=0;i<n;i++){
int x;
cin >> x;
mp[x]++;
}
cout << mp.size();
}
```

That's all for this blog, will see you in the next one soon.