#include using namespace std; typedef long long LL; LL A[2005],B[2005],sum[2005],dp[2005];// 已经a掉的题目数量 最少时间 int main(){ int T,n; cin>>T; while(T--){ memset(sum,0,sizeof(sum)); memset(dp,63,sizeof(dp)); scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%lld",&A[i]); for(int i=1;i<=n;i++){ scanf("%lld",&B[i]); sum[i]=sum[i-1]+B[i]; } dp[0]=0; int ans=0; for(int i=1;i<=n;i++){ for(int k=i-1;k>=0;k--){ if(A[i]+dp[k]<=sum[i]){ dp[k+1]=min(dp[k+1],A[i]+dp[k]); ans=max(ans,k+1); } } } printf("%d\n",ans); } return 0; }