#include #include #include #include #include #include using namespace std; const int devide = 10000; int main() { int n, a, b; cin >> n; priority_queue, greater > pque_input; vector enemy; for (int i = 0; i < n; i++) { cin >> a; pque_input.push(a * devide); } for (int i = 0; i < n; i++) { cin >> b; enemy.push_back(b); } long ans = 1e9; for (int i = 0; i < n; i++) { long battles = 0; auto pque = pque_input; for (int j = 0; j < n; j++) { long tmp = pque.top(); pque.pop(); tmp += (long)enemy[(i + j) % n] / 2 * devide + 1; pque.push(tmp); battles = max(battles, tmp % devide); } ans = min(ans, battles); } cout << ans << endl; return 0; }