#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#define min(a, b) a < b ? a : b
#define max(a, b) a > b ? a : b
int main(void)
{
int i, j, min = 0, push = 0, N;
scanf("%d", &N);
long long a[N], b[N];
for (i = 0; i < N; i++) {
scanf("%lld %lld", &a[i], &b[i]);
}
for (i = N - 1; i >= 0; i--) {
//printf("%lld %lld\n", a[i], b[i]);
if (a[i] <= b[i]) {
push = b[i] - a[i];
min += push;
for (j = i - 1; j >= 0; j--) {
a[j] += push;
}
} else if (b[i] > 1){
push = b[i] - (a[i] % b[i]);
min += push;
for (j = i - 1; j >= 0; j--) {
a[j] += push;
}
}
}
printf("%d\n", min);
return (0);
}
./Main.c: In function ‘main’:
./Main.c:12:2: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d", &N);
^
./Main.c:17:3: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%lld %lld", &a[i], &b[i]);
^