#include using namespace std; #include #include #include #include #include template inline bool chmax(T& a, T b) { if (a < b) { a = b; return 1; } return 0; } template inline bool chmin(T& a, T b) { if (a > b) { a = b; return 1; } return 0; } #define rep(i,n) for (int i = 0; i < (n); ++i) typedef long long ll; typedef long double ld; typedef unsigned long long ull; using P=pair; const int INF=1001001001; const int mod=1e9+7; int p[1005][1005],dp[1005][1005]; void solve(){ int n,m,q; cin>>n>>m>>q; rep(i,q){ int a,b; cin>>a>>b; p[a][b]=1; } for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ if(p[i][j]){chmax(dp[i][j],dp[i-1][j-1]+p[i][j]);} else{chmax(dp[i][j],max(dp[i-1][j],dp[i][j-1]));} } } cout<