#include #include #include #include #include #include #include using namespace std; typedef long long ll; int main(){ ios::sync_with_stdio(false); cin.tie(0); cout << setprecision(10) << fixed; int n; cin >> n; vector a(n), b(n); for(int i = 0; i < n; i++) cin >> a[i]; for(int i = 0; i < n; i++) cin >> b[i]; vector v(n); for(int i = 0; i < n; i++) v[i] = i; int ans = 0; do{ int tmp = 0; for(int i = 0; i < n; i++){ tmp += max(0, a[v[i]]-b[i]); } ans = max(ans, tmp); }while(next_permutation(v.begin(), v.end())); int cnt = 0; for(int i = 0; i < n; i++) v[i] = i; do{ int tmp = 0; for(int i = 0; i < n; i++){ tmp += max(0, a[v[i]]-b[i]); } if(tmp == ans) cnt++; }while(next_permutation(v.begin(), v.end())); cout << cnt << endl; }