本人蒟蒻实名认证,我是汉高祖
  • 板块灌水区
  • 楼主cxf2012
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/12/3 11:15
  • 上次更新2024/12/3 17:32:32
查看原帖
本人蒟蒻实名认证,我是汉高祖
1432337
cxf2012楼主2024/12/3 11:15

屁嘞,汉高祖终于绿名了

求调(求思路)(可以用二分吗佬佬们)

#include<bits/stdc++.h>
using namespace std;
#define L long long
L  n, k, z[101], y[101], ans, r[1001];
L  m[101];
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin >> n >> k;
	for (int i = 1; i <= n; i++) {
		cin >> z[i];
		r[i] = r[i - 1] + z[i];
	}
	for (int i = 1; i <= n - 1; i++) {
		L s;
		cin >> s;
		y[i] = y[i - 1] + s;
	}
	L ll = k;
	while (ll > 0) {
		for (int i = 1; i <= n; i++) {
			if (r[i] > (r[n] - r[i])) {
				m[ll] = y[i];
				break;
			}
		}
		ll--;
	}
	for (int i = 1; i <= n; i++) {
		L mn = 1e9;
		for (int j = 1; j <= k; j++) {
			mn = min(abs((y[i] - m[j])), mn);
		}
		ans += mn * z[i];
	}
	cout << ans;
	return 0;
}
2024/12/3 11:15
加载中...