查看原帖
324095
KevTheDev楼主2020/4/30 12:03

rt

#include <cstdio>

#define MAXN 100001

int n, l, v, q;
int a[2 * MAXN], t[2 * MAXN];

int main()
{
	//freopen("endless.in", "r", stdin);
	//freopen("endless.out", "w", stdout);

	scanf("%d%d%d\n", &n, &l, &v);
	for (register int i = 0; i < n; ++i)
		scanf("%d", &a[i]);
	scanf("%d", &q);
	for (register int i = 0; i < q; ++i)
		scanf("%d", &t[i]);

	const long double YEARS = (long double) l / v;
	long double years = YEARS;
	bool found = false;

	for (register int i = 0; i < q; ++i)
	{
		found = false;
		for (register int j = 0; j < n; ++j)
		{
			if (years >= t[i])
			{
				printf("%d\n", j);
				years = YEARS;
				found = true;
				break;
			}
			years += (long double) a[j] / v;
		}
		if (!found)
		{
			years = YEARS;
			printf("-1\n");
		}
	}

	fclose(stdin);
	fclose(stdout);
	return 0;
}
2020/4/30 12:03
加载中...