求助
  • 板块P1161 开灯
  • 楼主空kong
  • 当前回复4
  • 已保存回复4
  • 发布时间2021/1/2 17:02
  • 上次更新2023/11/5 05:17:10
查看原帖
求助
346355
空kong楼主2021/1/2 17:02
#include <stdio.h>
char s[2000001] = { 0 };
double a[5000] = { 0 };
int t[5000] = { 0 };
int main(void)
{
	
	int n = 0;
	scanf("%d", &n);
	
	for (int i = 0; i < n; i++)
	{
		scanf("%lf %d", &a[i], &t[i]);
		for (int j = 1; j <= t[i]; j++)//开关的变化
		{
			s[(int)(a[i] * j)]++;
		}
	}
	double x = a[0];
	int y = t[0];
	for (int i = 0; i < n-1; i++)//找出最大的a[i],t[i]
	{
		if (a[i] < a[i + 1])
		{
			x = a[i + 1];
		}
		if (t[i] < t[i + 1])
		{
			y = t[i + 1];
		}
	}
	for (int i = 1; i <= (int)(x * y); i++)
	{
		if (0 != s[i] % 2)//若是奇数则是打开
		{
			printf("%d", i);
			break;
		}
	}
	return 0;
}

第二个点WA,有人知道是为什么吗?

2021/1/2 17:02
加载中...