func_code_string: #include <bits/stdc++.h>   using namespace std;   const int INF = (int)2e9;   const long long INFL = (long long)9e18;   const int MAXINT = ((~0) ^ (1 << 31));   const long long MAXLL = ((~0) ^ ((long long)1 << 63));   template <class T>   inline T pow2(T a) {     return a * a;   }   template <class T>   inline bool mineq(T& a, T b) {     return (a > b) ? (a = b, true) : false;   }   template <class T>   inline bool maxeq(T& a, T b) {     return (a < b) ? (a = b, true) : false;   }   const int maxn = 2e5;   long long n, k, x, cnt;   pair<long long, long long> p[maxn];   int main() {     ios_base::sync_with_stdio(0);     cin >> n >> k;     for (int i = 1; i <= n; i++) p[i] = {1e10, 0};     for (int i = 1; i <= k; i++) {       cin >> x;       p[x].first = min(p[x].first, (long long)i);       p[x].second = max(p[x].second, (long long)i);     }     if (p[1].first > p[2].second && n != 1) {       cnt++;     }     if (p[n].first > p[n - 1].second && n != 1) {       cnt++;     }     if (p[1].second == 0) cnt++;     if (p[n].second == 0 && n != 1) cnt++;     for (int i = 2; i <= n - 1; i++) {       if (p[i].second == 0) cnt++;       if (p[i].first > p[i + 1].second) {         cnt++;       }       if (p[i].first > p[i - 1].second) {         cnt++;       }     }     cout << cnt;   }   