#include using namespace std; using ll = long long; #define rep(i,m,n) for(int i=m; i> N >> M >> K >> op; vector A(N), B(M); rep(i, 0, M) cin >> B[i]; rep(i, 0, N) cin >> A[i]; sort(B.begin(), B.end()); ll ans = 0LL; repl(i, 0, N){ if(A[i] >= K){ ans += M; continue; } ll key; if(op == '+'){ key = K - A[i]; }else{ key = (K + A[i] - 1LL) / A[i]; } auto it = lower_bound(B.begin(), B.end(), key); ans += ll(M - (it - B.begin())); } cout << ans << endl; return 0; }