#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
int N, M, K;
cin >> N >> M >> K;
vector<int> T(N);
int maxT = 0;
for(int i = 0; i < N; i++) { cin >> T[i]; maxT = max(maxT, T[i]); }
vector<int> D(K);
int Dmax = 0;
for(int i = 0; i < K; i++) { cin >> D[i]; Dmax = max(Dmax, D[i]); }
int sum_limit = M * maxT + 1;
vector<bitset<1000001>> dp(M + 1); // dp[cnt][sum] = sum 가능한지
dp[0][0] = 1;
for(int t : T) {
for(int cnt = M - 1; cnt >= 0; cnt--) {
dp[cnt + 1] |= dp[cnt] << t;
}
}
unordered_set<int> Dset(D.begin(), D.end());
int ans = 0;
for(int F1 = 0; F1 + Dmax < sum_limit; F1++) {
bool ok = true;
for(int d : D) if(!dp[M][F1 + d]) { ok = false; break; }
if(!ok) continue;
for(int x = 0; x <= Dmax; x++) {
if(Dset.count(x)) continue;
if(F1 + x < sum_limit && dp[M][F1 + x]) { ok = false; break; }
}
if(ok) ans++;
}
cout << ans << "\n";
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUoMCk7CgogICAgaW50IE4sIE0sIEs7CiAgICBjaW4gPj4gTiA+PiBNID4+IEs7CiAgICB2ZWN0b3I8aW50PiBUKE4pOwogICAgaW50IG1heFQgPSAwOwogICAgZm9yKGludCBpID0gMDsgaSA8IE47IGkrKykgeyBjaW4gPj4gVFtpXTsgbWF4VCA9IG1heChtYXhULCBUW2ldKTsgfQoKICAgIHZlY3RvcjxpbnQ+IEQoSyk7CiAgICBpbnQgRG1heCA9IDA7CiAgICBmb3IoaW50IGkgPSAwOyBpIDwgSzsgaSsrKSB7IGNpbiA+PiBEW2ldOyBEbWF4ID0gbWF4KERtYXgsIERbaV0pOyB9CgogICAgaW50IHN1bV9saW1pdCA9IE0gKiBtYXhUICsgMTsKCiAgICB2ZWN0b3I8Yml0c2V0PDEwMDAwMDE+PiBkcChNICsgMSk7IC8vIGRwW2NudF1bc3VtXSA9IHN1bSDqsIDriqXtlZzsp4AKICAgIGRwWzBdWzBdID0gMTsKCiAgICBmb3IoaW50IHQgOiBUKSB7CiAgICAgICAgZm9yKGludCBjbnQgPSBNIC0gMTsgY250ID49IDA7IGNudC0tKSB7CiAgICAgICAgICAgIGRwW2NudCArIDFdIHw9IGRwW2NudF0gPDwgdDsKICAgICAgICB9CiAgICB9CgogICAgdW5vcmRlcmVkX3NldDxpbnQ+IERzZXQoRC5iZWdpbigpLCBELmVuZCgpKTsKICAgIGludCBhbnMgPSAwOwoKICAgIGZvcihpbnQgRjEgPSAwOyBGMSArIERtYXggPCBzdW1fbGltaXQ7IEYxKyspIHsKICAgICAgICBib29sIG9rID0gdHJ1ZTsKICAgICAgICBmb3IoaW50IGQgOiBEKSBpZighZHBbTV1bRjEgKyBkXSkgeyBvayA9IGZhbHNlOyBicmVhazsgfQogICAgICAgIGlmKCFvaykgY29udGludWU7CiAgICAgICAgZm9yKGludCB4ID0gMDsgeCA8PSBEbWF4OyB4KyspIHsKICAgICAgICAgICAgaWYoRHNldC5jb3VudCh4KSkgY29udGludWU7CiAgICAgICAgICAgIGlmKEYxICsgeCA8IHN1bV9saW1pdCAmJiBkcFtNXVtGMSArIHhdKSB7IG9rID0gZmFsc2U7IGJyZWFrOyB9CiAgICAgICAgfQogICAgICAgIGlmKG9rKSBhbnMrKzsKICAgIH0KCiAgICBjb3V0IDw8IGFucyA8PCAiXG4iOwp9