'''
本质是01背包,约束条件有两个维度,价值也是有两个维度(收服的怪兽数目,剩余血量),需要把
价值映射成1维度的来比较大小进行决策
dp(i, j, k) 表示前i种怪兽在精灵球剩余j个,血量剩余k条件下的最大价值
实现的时候把第一维的空间压缩了
'''
def value(a, b):
return a * 600 + b
N, M, K = map(int, input().split())
arr = []
for _ in range(K):
nn, mm = map(int, input().split())
arr.append((nn, mm))
dp = [[0 for _ in range(M + 1)] for _ in range(N + 1)]
for i in range(K):
for j in range(N, -1, -1):
for k in range(M, -1, -1):
if i == 0:
dp[j][k] = (1, k - arr[i][1]) if j >= arr[i][0] and k > arr[i][1] else (0, k)
else:
if j >= arr[i][0] and k > arr[i][1]:
nn, mm = dp[j - arr[i][0]][k - arr[i][1]]
if value(nn + 1, mm) > value(dp[j][k][0], dp[j][k][1]):
dp[j][k] = (nn + 1, mm)
print(dp[N][M][0], dp[N][M][1])