题目描述
blablabla
样例
blablabla
算法1
include [HTML_REMOVED]
include [HTML_REMOVED]
include [HTML_REMOVED]
using namespace std;
const int N = 1010,M = 110;
int n ,L, S, res;
int x[N],y[N];
int Smap[M][M],tmp[M][M];
bool flag;
int main()
{
scanf(“%d %d %d”,&n ,&L ,&S);
for(int i = 0 ; i < n ; i++){
scanf("%d %d",&x[i],&y[i]);//输入树的坐标
}
for(int i = S ; i >= 0 ; i --){
for(int j = 0 ; j <= S ; j++){
cin >> Smap[i][j];
}
}
for(int i = 0 ; i < n ;i++){
//遍历每一棵树,看看他是不是左下角
//首先存进tmp中
memset(tmp,0,sizeof tmp);
for(int j = 0 ;j < n ; j++){
if(x[j]>=x[i] && (x[j]-x[i])<=S && y[j]>=y[i] && (y[j]-y[i])<=S)
tmp[x[j]-x[i]][y[j]-y[i]] = 1;
}
flag = true;
for(int m = 0 ;m < S+1 ; m++){
for(int p = 0 ; p < S+1 ; p++){
if(tmp[m][p] != Smap[m][p] || x[i]+m > L || y[i]+p >L){//这里是或者||
flag = false;
break;
}
}
}
res += flag;
}
printf("%d",res);//输出是res!!!!!
return 0;
}
C++ 代码
blablabla
算法2
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla