#include #define REP(i,n) for(int i=0,i##_len=(n);i P; int N;cin>>N; vector A(N); REP(i, N) cin >> A[i]; vector B(N); REP(i, N) cin >> B[i]; priority_queue,greater

> que; int ans=INT_MAX; REP(i,N){ REP(j,N) que.push(P(A[j],0)); REP(j,N){ P p=que.top();que.pop(); p.first+=B[(i+j)%N]/2;p.second++; que.push(p); } int tmp=0; while(!que.empty()){ tmp=max(tmp,que.top().second); que.pop(); } ans=min(ans,tmp); } cout<