View Code of Problem 3699

#include <stdio.h>
#include <math.h>

//不同球可能落在同一位置 淦 想一晚上 

int main() {
	int l, n;
	while (scanf("%d %d", &l, &n) != EOF) {
		int f[2001] = { 0 };
		int k[2001] = { 0 };
		int damage[2001] = { 0 };
		for (int i = 0;i < n;i++) {
			scanf("%d", &k[i]);
		}
		for (int i = 0;i < n;i++) {
			scanf("%d", &f[i]);
		}
		for (int i = 0;i <= l;i++) {
			for (int j = 0;j < n;j++) {
				damage[i] += (f[j] - fabs(k[j] - i)) > 0 ? f[j] - fabs(k[j] - i) : 0;
			}
		}

		int min = damage[0];
		int index = 0;
		/*for (int i = 0;i <= l;i++) {
			printf("%d ", damage[i]);
		}
		printf("\n");*/
		for (int i = 0;i <= l;i++) {
			if (damage[i] < min) {
				min = damage[i];
				index = i;
			}

		}
		//printf("%d %d\n", index, min);
		printf("%d\n", index);
		printf("%d\n", min);
	}
}

Double click to view unformatted code.


Back to problem 3699