欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

hdu1050 Moving Tables 贪心算法

程序员文章站 2022-03-26 11:29:17
...

可以叫做重叠法? 就是把所有经过的路径用数组记录下来,最后判断重叠最多的数组中的数 然后乘以时间。如同下图所示。emmm可能有点不清楚。直接上代码了!

hdu1050 Moving Tables 贪心算法

#include<stdio.h>
#include<string.h>
int main()
{
	int t, m,s, temp,d, a[300];
	int i, j; int min;
	scanf("%d", &t);
	while (t--)
	{
		memset(a, 0, sizeof(a));
		scanf("%d", &m);
		for (i = 0; i < m; i++)
		{
			scanf("%d%d", &s, &d);
			 
			if (s>d)
			{
				temp = s; s = d; d = temp;
			}
			s = (s - 1) / 2;
			d = (d - 1) / 2;
			for (j = s; j <= d; j++)
				a[j]++;
		}			
		min= -2;		
		for (i = 0; i < 300; i++)
		{
			if (a[i]>min) min = a[i];
		}
		printf("%d\n", min * 10);
	}
}