#include "railroad.h"
#include<iostream>
#include<vector>
#include<queue>
#include<deque>
#include<string>
#include<fstream>
#include<algorithm>
#include <iomanip>
#include<map>
#include <set>
#include <unordered_map>
#include <stack>
#include <unordered_set>
#include <cmath>
#include <cstdint>
#include <cassert>
#include <bitset>
#include <random>
#include <chrono>
#include <cstring>
#define shit short int
#define ll long long
#define ld long double
//#define int ll
#define For(i, n) for(int i = 0; i < (int)n; i++)
#define ffor(i, a, n) for(int i = (int)a; i < (int)n; i++)
#define rfor(i, n) for(int i = (int)n; i >= (int)0; i--)
#define rffor(i, a, n) for(int i = (int)n; i >= (int)a; i--)
#define vec vector
#define ff first
#define ss second
#define pb push_back
#define pii pair<int, int>
#define pld pair<ld, ld>
#define NEK 2000000000000000
#define mod 1000000007
#define mod2 1000000009
#define rsz resize 
#define prv 43
#define prv2 47
#define D 8
#define trav(a,x) for (auto& a: x)
#define pb push_back
#define ub upper_bound
#define lb lower_bound
#define all(x) (x).begin(), (x).end()
#define sig 0.0000001
using namespace std;
ll pomale(vec<int>&s, vec<int>&t) {
    int n = s.size();
    vec<vec<ll>> dp((1 << n), vec<ll>(n, NEK));
    For(i, n) {
        dp[(1<<i)][i] = 0;
    }
    ffor(i, 1, (1<<n)) {
        For(j, n) {
            if (!((1 << j) & i)) continue;
            For(k, n) {
                if (k == j) continue;
                if (!((1 << k) & i)) continue;
                dp[i][j] = min(dp[i][j], dp[i - (1 << j)][k] + max((ll)0, (ll)t[k] - (ll)s[j]));
            }
        }
    }
    ll mini = NEK;
    For(i, n) {
        mini = min(mini, dp[(1 << n) - 1][i]);
    }
    return mini;
}
ll rychle(vec<int>& s, vec<int>& t) {
    return 0;
}
long long plan_roller_coaster(vector<int> s, vector<int> t) {
    int n = s.size();
    if (n <= 16) return pomale(s, t);
    rychle(s, t);
}
/*
signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int n; cin >> n;
    vec<int> s(n), t(n);
    For(i, n) {
        cin >> s[i];
    }
    For(i, n) cin >> t[i];
    cout << plan_roller_coaster(s, t) << '\n';
    return 0;
}*/
Compilation message (stderr)
railroad.cpp: In function 'long long int plan_roller_coaster(std::vector<int>, std::vector<int>)':
railroad.cpp:82:11: warning: control reaches end of non-void function [-Wreturn-type]
   82 |     rychle(s, t);
      |     ~~~~~~^~~~~~
railroad.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
railroad_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |