조회 수 229 추천 수 0 댓글 0

#include <stdio.h>
int x[100]={0}, y[100]={0}; //x:가로 점선 y:세로 점선
int x_c=0, y_c=0; //가로 점선 개수, 세로 점선 개수

int line(void); //오름차순 정렬
int x_max(int n); //가로길이 최대
int y_max(int m); //세로길이 최대
int main(void)
{
	int n, m, l, i, a;

	scanf(" %d %d", &n, &m); //가로, 세로 길이
	scanf(" %d", &l); //점선의 개수

	for(i=0; i<l; i++)
	{
		scanf(" %d", &a);
		if(a==0) //가로 점선
		{
			scanf(" %d", &x[x_c++]);
		}
		else //세로 점선
		{
			scanf(" %d", &y[y_c++]);
		}
	}

	line();
	printf("%d", x_max(n)*y_max(m));

	return 0;
}
int line(void)
{
	int i, j, temp, min;

	for(i=0; i<(x_c-1); i++)
	{
		min=i;
		for(j=i+1; j<x_c; j++)
		{
			if(x[min]>x[j])
				min=j;
		}
		if(min!=i)
		{
			temp=x[i];
			x[i]=x[min];
			x[min]=temp;
		}
	}

	for(i=0; i<(y_c-1); i++)
	{
		min=i;
		for(j=i+1; j<y_c; j++)
		{
			if(y[min]>y[j])
				min=j;
		}
		if(min!=i)
		{
			temp=y[i];
			y[i]=y[min];
			y[min]=temp;
		}
	}
}
int x_max(int n)
{
	if(y_c==0) //세로 점선이 없을 경우
		return n;

	int i, max=0, a;

	for(i=0; i<=y_c; i++)
	{
		if(i==0)
			a=y[i];

		else if(i==y_c)
			a=n-y[i-1];

		else
			a=y[i]-y[i-1];

		if(max<a)
			max=a;
	}

	return max;
}
int y_max(int m)
{
	if(x_c==0) //가로 점선이 없을 경우
		return m;

	int i, max=0, a;

	for(i=0; i<=x_c; i++)
	{
		if(i==0)
			a=x[i];

		else if(i==x_c)
			a=m-x[i-1];

		else
			a=x[i]-x[i-1];

		if(max<a)
			max=a;
	}

	return max;
}



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. 좋은아빠되기 2019.02.15 299
공지 키보드 화살표값 출력 좋은아빠되기 2016.11.19 1079
공지 원하는 좌표에 값 출력하기 좋은아빠되기 2016.11.19 2394
공지 Python(파이썬) 학습 자료 PDF 1 file 좋은아빠되기 2014.12.10 10308
공지 dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) 좋은아빠되기 2014.06.07 4719
공지 DEV-C++ 기본 코드 좋은아빠되기 2013.06.19 8267
공지 무료 C++ 컴파일러(윈도우용) DEV-C++ 좋은아빠되기 2013.06.18 18956
공지 이클립스 C++ 설치 파일들 좋은아빠되기 2013.06.18 37860
330 정올 기초다지기(함수2-자가진단3) killerjack 2014.07.12 1105
329 정올 기초다지기(함수2-자가진단2) killerjack 2014.07.12 804
328 정올 기초다지기(함수2-자가진단1) killerjack 2014.07.12 889
327 정올 기초다지기(함수1-자가진단8) killerjack 2014.06.07 1380
326 정올 기초다지기(함수1-자가진단7) killerjack 2014.06.07 1199
325 정올 기초다지기(함수1-자가진단6) killerjack 2014.05.31 1439
324 정올 기초다지기(함수1-자가진단5) killerjack 2014.05.31 2597
323 정올 기초다지기(포인터-자가진단7) killerjack 2014.11.15 508
322 정올 기초다지기(포인터-자가진단6) killerjack 2014.11.15 493
321 정올 기초다지기(포인터-자가진단5) killerjack 2014.11.15 540
320 정올 기초다지기(포인터-자가진단4) killerjack 2014.11.15 560
319 정올 기초다지기(포인터-자가진단3) killerjack 2014.11.15 585
318 정올 기초다지기(포인터-자가진단2) killerjack 2014.11.15 391
317 정올 기초다지기(포인터-자가진단1) killerjack 2014.11.15 717
316 정올 기초다지기(파일입출력-자가진단4)미완성 killerjack 2015.04.11 274
315 정올 기초다지기(파일입출력-자가진단3) killerjack 2015.04.11 582
314 정올 기초다지기(파일 입출력-자가진단2) killerjack 2014.11.22 580
313 정올 기초다지기(파일 입출력-자가진단1) killerjack 2014.11.22 1072
312 정올 기초다지기(배열2-자가진단7) killerjack 2014.05.31 1507
311 정올 기초다지기(배열2-자가진단6) killerjack 2014.05.31 1432
Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 ... 26 Next
/ 26