最短経路として考えられる場合として、テレポーターを使って移動する場合と、階段のみを使って移動する場合についての パターンが考えられます。
よって、それぞれについて移動にかかる時間を計算し、最小のものを出力すればよいです。
#include <bits/stdc++.h> using namespace std; int main(){ int n, a, b, c, t; cin >> n >> a >> b >> c >> t; int ans = min((n - 1) * t, (a - 1) * t + (n - b) * t + c); cout << ans << endl; }