天天看點

すぬけ君の塗り絵 2 イージー / Snuke's Coloring 2 (ABC Edit) AtCoder - 2145

這個題就是典型的想出輪廓後,然後再具體分類,弄出各種情況

其中發現了一個新的地方,之前是要記得每次循環更新資料,這次更新資料是要判斷是否更新後,然後再更新(其實就可以用max與min函數)

#include<stdio.h>

int main()
{
	int i=0,xi,yi,a,N;
	int wl,wr,hu,hd,W,H;
    scanf("%d %d %d",&W,&H,&N);
     wl=0,hd=0,wr=W,hu=H;
    for(i=0;i<N;i++)
    {
    	scanf("%d %d %d",&xi,&yi,&a);
    	if(a==1)
    	{
    		if(xi>=wl)
    		wl=xi;
		}
		else if(a==2)
		{
			if(xi<=wr)
			wr=xi;
		}
		else if(a==3)
		{
			if(yi>=hd)
			hd=yi;
			
		}
		else
		{
			if(yi<=hu)
			hu=yi;
		}
		
	}
	if((wl>=wr)||(hd>=hu))
	{
		printf("0");
	}
	else
	printf("%d",(hu-hd)*(wr-wl));
	return 0;
}
           

繼續閱讀