func_code_string: #include <bits/stdc++.h>   const int MAX_LEN = 1010;   using namespace std;   template <typename U, typename V>   string to_string(pair<U, V>);   string to_string(const string& e_) { return     + e_ +    ; }   string to_string(char e_) { return      + string(1, e_) +     ; }   string to_string(bool e_) { return e_ ?  true  :  false ; }   template <typename T>   string to_string(T e_) {     string s_ =  [  ;     for (const auto& x_ : e_) s_ += to_string(x_) +    ;     return s_ +  ] ;   }   template <typename U, typename V>   string to_string(pair<U, V> e_) {     return  (  + to_string(e_.first) +  ,   + to_string(e_.second) +  ) ;   }   void dbg_str() { ; }   template <typename U, typename... V>   void dbg_str(U u, V... v) {     ;     dbg_str(v...);   }   long long int n, m;   long long int ans, mn;   long long int lx, hx, wx;   struct rd {     long long int l;     long long int w;     long long int h;   };   vector<rd> rooms;   vector<rd> rolls;   int main() {     scanf( %lld , &n);     for (int i = 0; i < n; i++) {       scanf( %lld %lld %lld , &lx, &wx, &hx);       rooms.push_back({lx, wx, hx});     }     scanf( %lld , &m);     for (int i = 0; i < m; i++) {       scanf( %lld %lld %lld , &lx, &wx, &hx);       rolls.push_back({lx, wx, hx});     }     ans = 0;     for (int i = 0; i < n; i++) {       mn = 1e14;       for (int j = 0; j < m; j++) {         long long int totw = (rolls[j].l / rooms[i].h) * rolls[j].w;         if (!totw) continue;         long long int nr =             (long long int)ceil(((double)2 * (rooms[i].l + rooms[i].w)) / totw);         mn = min(mn, nr * rolls[j].h);       }       ans += mn;     }     printf( %lld n , ans);   }   