func_code_string: #include <bits/stdc++.h>   using namespace std;   int setBite(int r, int pos) { return r | (1 << pos); }   int resetBit(int r, int pos) { return r & ~(1 << pos); }   bool checkBit(int r, int pos) { return (r & (1 << pos)); }   bool leap(long long x) {     if ((x % 4 == 0 && x % 100 != 0) || x % 400 == 0) return true;     return false;   }   long long bigmod(long long a, long long b, long long mod) {     if (b == 0) return 1;     if (b % 2 == 0) {       long long ret = bigmod(a, b / 2, mod);       return ((ret % mod) * (ret % mod)) % mod;     } else       return ((a % mod) * (bigmod(a, b - 1, mod) % mod)) % mod;   }   template <class T>   inline T gcd(T a, T b) {     if (a < 0) return gcd(-a, b);     if (b < 0) return gcd(a, -b);     return (b == 0) ? a : gcd(b, a % b);   }   template <class T>   inline T lcm(T a, T b) {     if (a < 0) return lcm(-a, b);     if (b < 0) return lcm(a, -b);     return a * (b / gcd(a, b));   }   template <class T>   inline T sqr(T x) {     return x * x;   }   template <class T>   inline T power(T r, T p) {     T ans = 1;     for (T i = 0; i < p; i++) {       ans *= r;     }     return ans;   }   int main() {     ios_base::sync_with_stdio(0);     cin.tie(0);     int n;     cin >> n;     int g[2 * n + 5][2 * n + 5];     for (int i = 0; i < 2 * n + 5; i++) {       for (int j = 0; j < 2 * n + 5; j++) {         g[i][j] = 0;       }     }     for (int i = 1; i <= n - 1; i++) {       int a;       cin >> a;       g[i][i + 1] = a;       g[i + 1][i] = a;     }     for (int i = n + 1; i <= 2 * n - 1; i++) {       int a;       cin >> a;       g[i][i + 1] = a;       g[i + 1][i] = a;     }     for (int i = 1; i <= n; i++) {       int a;       cin >> a;       g[i][i + n] = a;       g[i + n][i] = a;     }     vector<int> v;     for (int i = 1; i <= n; i++) {       int ans = 0;       for (int j = 1; j <= i - 1; j++) {         ans += g[j][j + 1];       }       ans += g[i][i + n];       for (int j = i + n; j <= 2 * n - 1; j++) {         ans += g[j][j + 1];       }       v.push_back(ans);     }     sort(v.begin(), v.end());     cout << v[0] + v[1];     return 0;   }   