#include <bits/stdc++.h>
using namespace std;
pair<int, int> calc(int n, int k, const vector<int> &p, const vector<int> &q) {
int m = n - k + 1, best = -1, ways = 0;
vector<int> pp(n + 1), pq(n + 1);
for (int i = 0; i < n; i++) pp[p[i]] = i, pq[q[i]] = i;
vector<vector<int>> d(m + 1, vector<int>(m + 1));
for (int v = 1; v <= n; v++) {
int x1 = max(0, pp[v] - k + 1), x2 = min(m - 1, pp[v]);
int y1 = max(0, pq[v] - k + 1), y2 = min(m - 1, pq[v]);
d[x1][y1]++;
if (x2 + 1 < m) d[x2 + 1][y1]--;
if (y2 + 1 < m) d[x1][y2 + 1]--;
if (x2 + 1 < m && y2 + 1 < m) d[x2 + 1][y2 + 1]++;
}
for (int i = 0; i < m; i++) for (int j = 0; j < m; j++) {
if (i) d[i][j] += d[i - 1][j];
if (j) d[i][j] += d[i][j - 1];
if (i && j) d[i][j] -= d[i - 1][j - 1];
if (d[i][j] > best) best = d[i][j], ways = 1;
else if (d[i][j] == best) ways++;
}
return {best, ways};
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n, k, Q; cin >> n >> k >> Q;
vector<int> p(n), q(n);
for (int &x : p) cin >> x;
for (int &x : q) cin >> x;
auto [b, w] = calc(n, k, p, q);
cout << b << ' ' << w << '\n';
while (Q --> 0) {
int x; cin >> x; --x;
swap(p[x], p[x + 1]);
tie(b, w) = calc(n, k, p, q);
cout << b << ' ' << w << '\n';
}
}