func_code_string: #include <bits/stdc++.h>   using namespace std;   int x, y, a, b, r, m, t, pr;   int poc, kraj, uk;   int drvo[2000], sveca[2000];   void apdejt(int a, int b) {     while (a <= 2000) {       drvo[a] += b;       a += (a & -a);     }   }   int koliko(int a) {     int zbir = 0;     while (a > 0) {       zbir += drvo[a];       a -= (a & -a);     }     return zbir;   }   void solve() {     cin >> m >> t >> r;     uk = 0;     for (int i = 0; i < m; i++) {       cin >> a;       a += 500;       if (koliko(a) >= r) continue;       kraj = r - koliko(a);       for (int j = 0; j < kraj; j++) {         x = -1;         for (int z = a - 1; z >= a - t; z--) {           if (sveca[z] == 0) {             sveca[z] = 1;             uk++;             apdejt(z, 1);             apdejt(z + t + 1, -1);             x = 1;             break;           }         }         if (x == -1) {           cout <<  -1  << endl;           return;         }       }     }     cout << (uk) << endl;   }   int main() {     ios_base::sync_with_stdio(false);     int t;     t = 1;     while (t--) {       solve();     }     return 0;   }   