UVa297四分树
程序员文章站
2022-06-09 21:27:16
...
题目大意如下图:
下面附上我的代码,注意以下代码只针对一组输入数据,如果想改为多组,请读者自便:
#include <stdio.h>
#include <string.h>
int ans=0,p=0;
int content[32][32];
char string[1024+5];
void draw(int x,int y,int w){
char color = string[p++];
if(color == 'p'){
draw(x,y+w/2,w/2);
draw(x,y,w/2);
draw(x+w/2,y,w/2);
draw(x+w/2,y+w/2,w/2);
}else if(color == 'f'){
int i,j;
for(i=y;i<y+w;i++)
for(j=x;j<x+w;j++)
if(content[i][j] == 0){
content[i][j] = 1;
ans++;
}
}
}
int main(){
int n = 2;
memset(content,0, sizeof(content));
while(n--){
p = 0;
scanf("%s",string);
draw(0,0,32);
}
printf("%d\n",ans);
return 0;
}
上一篇: Lua学习笔记之数据结构