#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,有人知道是为什么吗?