#include <stdio.h>
int main() {
int n, t;
double a;
scanf("%d", &n);
int max = 0;
int b[n];
int m[n];
for (int i = 0; i < n; i++) {
scanf("%f %d", &a, &t);
m[i] = (int)a;
b[i] = t;
if ((int)a * t > max)
max = (int)a * t;
}
int x[max];
for (int i = 0; i < max; i++) {
x[i] = 0;
}
for (int i = 0; i < n; i++) {
for (int j = 1; j < b[n - 1]; j++) {
for (int k = 0; k < max; k++) {
if (m[i]*j == 0) {
x[k] = 1;
} else {
x[k] = 0;
}
}
}
}
for (int i = 0; i < max; i++) {
if (x[i] == 1) {
printf("%d", i);
}
}
return 0;
}
为什么m数组一直是0,把1.6强制转换了不是1吗