/* * zap.c * * Created on: Nov 21, 2017 * Author: A.Mulawa */ #include <stdlib.h> #include <stdio.h> int compare(const void* a, const void* b) { int int_a = *((int*) a); int int_b = *((int*) b); if (int_a == int_b) return 0; else if (int_a < int_b) return -1; else return 1; } int main(int argc, char **argv) { int n, m; scanf("%d %d", &n, &m); long long k[200000]; //klienci int z[200000]; //czas zapiekanki for (int i = 0; i < n; i++) { scanf("%ld", &k[i]); } for (int i = 0; i < m; i++) { scanf("%d", &z[i]); } long long op = 0; long long mc = 1; long long cs = 0; int ki, zi; for (zi = 0; zi < m; zi++) { op = 0; mc = 1; if (z[zi] == 0) { printf("%d\n", 0); return 0; } for (ki = 0; ki < n; ki++) { cs = k[ki] - z[zi] + 1; if (cs < mc) { op += mc - cs; cs = mc; } mc = cs + z[zi]; } printf("%ld\n", op); } return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | /* * zap.c * * Created on: Nov 21, 2017 * Author: A.Mulawa */ #include <stdlib.h> #include <stdio.h> int compare(const void* a, const void* b) { int int_a = *((int*) a); int int_b = *((int*) b); if (int_a == int_b) return 0; else if (int_a < int_b) return -1; else return 1; } int main(int argc, char **argv) { int n, m; scanf("%d %d", &n, &m); long long k[200000]; //klienci int z[200000]; //czas zapiekanki for (int i = 0; i < n; i++) { scanf("%ld", &k[i]); } for (int i = 0; i < m; i++) { scanf("%d", &z[i]); } long long op = 0; long long mc = 1; long long cs = 0; int ki, zi; for (zi = 0; zi < m; zi++) { op = 0; mc = 1; if (z[zi] == 0) { printf("%d\n", 0); return 0; } for (ki = 0; ki < n; ki++) { cs = k[ki] - z[zi] + 1; if (cs < mc) { op += mc - cs; cs = mc; } mc = cs + z[zi]; } printf("%ld\n", op); } return 0; } |