#include<bits/stdc++.h>
using namespace std;
const int N=1e4+5,INF=1e9;
int n,m,k;
int l[N],r[N],cnt[N],x[N],y[N];
int dp[2][N],sum,minn;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cin>>n>>m>>k;
for(int i=1;i<=n;i++){
cin>>x[i]>>y[i];
l[i]=1,r[i]=m;
}
for(int i=1,p,a,b;i<=k;i++){
cin>>p>>a>>b;
l[p]=a+1,r[p]=b-1;
cnt[p]++;
}
for(int j=1;j<=m;j++) dp[0][j]=0;
for(int i=1;i<=n;i++){
for(int j=0;j<=m;j++) dp[i&1][j]=INF;
for(int j=x[i]+1;j<m;j++){
dp[i&1][j]=min({dp[i&1][j],dp[i-1&1][j-x[i]]+1,dp[i&1][j-x[i]]+1});
}
for(int j=max(1, m-x[i]);j<m;j++){
dp[i&1][m]=min({dp[i&1][m],dp[i-1&1][j]+1,dp[i&1][j]+1});
}
for(int j=1;j<=m-y[i];j++){
dp[i&1][j]=min(dp[i&1][j],dp[i-1&1][j+y[i]]);
}
minn=INF;
for(int j=l[i];j<=r[i];j++) minn=min(minn,dp[i&1][j]);
for(int j=1;j<l[i];j++) dp[i&1][j]=INF;
for(int j=r[i]+1;j<=m;j++) dp[i&1][j]=INF;
if(minn>=INF){
cout<<"0\n"<<sum;
return 0;
}
sum+=cnt[i];
}
cout<<"1\n"<<minn;
return 0;
}