
 
 
解析;
由于坐标必须为整数,并且距离不能为整数,则同行同列不能存在多个“好点”。
则每行每列只能放一个点,所以最多的点数量即为 min(n,m)+1
#include<bits/stdc++.h>
using namespace std;
int n,m;
int main(){
	scanf("%d%d",&n,&m);
	cout<<min(n+1,m+1)<<endl;
	if(n<m){
		for(int i=n;i>=0;i--){
			cout<<i<<" "<<n-i<<endl;
		}
	}
	else{
		for(int i=m;i>=0;i--){
			cout<<m-i<<" "<<i<<endl;
		}
	}
	return 0;
}


















