#include using namespace std; int main() { int n; cin >> n; vector a(n), b(n), ord(n); for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < n; i++) cin >> b[i]; for (int i = 0; i < n; i++) ord[i] = i; map mp; do { int keep = 0; for (int i = 0; i < n; i++) keep += max(a[ord[i]] - b[i], 0); mp[keep]++; } while (next_permutation(ord.begin(), ord.end())); cout << mp.rbegin()->second << '\n'; }