0分,但我肯定我的思路没问题
查看原帖
0分,但我肯定我的思路没问题
1066396
szm111213楼主2024/10/19 08:52
#include <bits/stdc++.h>
using namespace std;
int a[100010];
int v[100010];
int main()
{
	int n, d;
	cin >> n >> d;
	v[1] = 0;
	for (int i = 2; i <= n; i ++)
	{
		cin >> v[i];
		v[i] = v[i - 1] + v[i];
	}
	for (int j = 1; j <= n; j ++)
		cin >> a[j];
	a[n] = 0;
	int k = a[1], ans = 0, nxt = 1;
	a[n + 1] = -1;
	for (int i = 2; i <= n + 1; i ++)
	{
		if (a[i] < k)
		{
			ans += (int)ceil(1.0 * (v[i] - v[nxt]) / d) * a[i];
			nxt = i;
		}
	}
	cout << ans;
	return 0;
}
2024/10/19 08:52
加载中...