func_code_string: #include <bits/stdc++.h>   using namespace std;   long long fast_expo(long long base, long long exp, long long module) {     long long ans = 1;     while (exp) {       if (exp & 1) ans = (ans * base) % module;       base = (base * base) % module;       exp >>= 1;     }     return ans;   }   bool primes[100001];   void seive() {     memset(primes, true, sizeof(primes));     primes[0] = false;     primes[1] = false;     for (int i = 2; i * i <= 100000; i++) {       if (primes[i]) {         for (int j = i * i; j <= 100000; j += i) primes[j] = false;       }     }   }   bool isprime(int n) {     if (n == 1) return false;     if (n == 2) return true;     if (n % 2 == 0) return false;     for (int i = 3; i * i <= n; i += 2)       if (n % i == 0) return false;     return true;   }   long long gcd(long long a, long long b) {     if (b == 0)       return a;     else       return gcd(b, a % b);   }   long long f[100001];   long long fib(long long n) {     if (n == 0) return 0;     if (n == 1 || n == 2) return (f[n] = 1);     if (f[n]) return f[n];     long long k = (n & 1) ? (n + 1) / 2 : n / 2;     f[n] = (n & 1) ? (fib(k) * fib(k) + fib(k - 1) * fib(k - 1))                    : (2 * fib(k - 1) + fib(k)) * fib(k);     return f[n];   }   int main() {     ios_base::sync_with_stdio(false);     int n;     cin >> n;     int t1 = n % 10;     int t2 = t1;     int cnt1 = 0, cnt2 = 0;     if (t1 == 0) {       cout << n << endl;       return 0;     }     while (t1 <= 10) {       cnt1++;       t1++;     }     while (t2 > 0) {       t2--;       cnt2++;     }     if (cnt1 <= cnt2)       cout << (n + cnt1 - 1) << endl;     else       cout << (n - cnt2) << endl;     return 0;   }   