조회 수 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 298
공지 키보드 화살표값 출력 좋은아빠되기 2016.11.19 1075
공지 원하는 좌표에 값 출력하기 좋은아빠되기 2016.11.19 2392
공지 Python(파이썬) 학습 자료 PDF 1 file 좋은아빠되기 2014.12.10 10287
공지 dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) 좋은아빠되기 2014.06.07 4713
공지 DEV-C++ 기본 코드 좋은아빠되기 2013.06.19 8250
공지 무료 C++ 컴파일러(윈도우용) DEV-C++ 좋은아빠되기 2013.06.18 18950
공지 이클립스 C++ 설치 파일들 좋은아빠되기 2013.06.18 37841
110 주사위 세번떤져서 나오는 경우의수(승민) 승민 2016.08.13 1157
109 짝수 홀수 갯수구하기(승민) 승민 2016.03.12 1192
108 별표 잡아먹기 killerjack 2014.05.17 1195
107 정올 기초다지기(aA006-배열2 6) killerjack 2014.05.31 1196
106 정올 기초다지기(함수1-자가진단7) killerjack 2014.06.07 1199
105 정올 - 실력키우기 - 색종이(고)(1124) 조정미 2018.02.10 1248
104 세자리수 곱해서 각자리수 곱하기(승민) 승민 2016.08.27 1258
103 정올 기초다지기(aA002-배열2 2) killerjack 2014.05.31 1278
102 정올 기초다지기(함수3-자가진단4)[완성] killerjack 2014.08.16 1297
101 정올 기초다지기(aA009-배열2 9) killerjack 2014.05.31 1311
100 정올 - 실력키우기 - 최대공약수와 최소공배수(1658) 조정미 2018.01.02 1311
99 dev C++ 입력키값 숫자로 알아보기 killerjack 2014.06.07 1315
98 정올 - 실력키우기 - 오목(1733) 조정미 2018.01.20 1326
97 별로 다이아 껍데기만 출력하기 killerjack 2014.05.03 1344
96 시계~~~ killerjack 2014.05.17 1371
95 두 실수 사이 정수 갯수 구하기 killerjack 2014.08.16 1373
94 정올 기초다지기(함수1-자가진단8) killerjack 2014.06.07 1380
93 입력한 숫자 이하 짝수만 출력하기(승민) 승민 2016.03.12 1401
92 주사위 굴리기 갓초딩 2017.03.25 1414
91 정올 기초다지기(aA003-배열2 3) killerjack 2014.05.31 1420
Board Pagination Prev 1 ... 16 17 18 19 20 21 22 23 24 25 26 Next
/ 26