121282024-12-03 12:55:34RRoliZenehallgatáscpp17Időlimit túllépés 15/50254ms2540 KiB
#include <bits/stdc++.h>
using namespace std;

unsigned long long n, k, a[100001], p[100001];
int binker(int e, int u, int t) {
	if(u-e <= 1) {
		if(t >= p[u]) return u;
		return e;
	}
	int mid = (e+u)/2;
	if(t >= p[mid]) return binker(mid, u, t);
	return binker(e, mid-1, t);
}

int main() {
	cin >> n >> k;
	for(int i = 1; i <= n; i++) {
		cin >> a[i];
		if(i < n) p[i+1] = p[i] + a[i];
		p[i]++;
	}
	cout << endl;
	for(int i = 0; i < k; i++) {
		unsigned long long q;
		cin >> q;
		q %= p[n]+a[n]-1;
		if(q == 0) cout << n << ' ';
		else cout << binker(1, n, q) << ' ';
	}
	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base15/50
1Elfogadva0/01ms320 KiB
2Időlimit túllépés0/0245ms2304 KiB
3Elfogadva2/23ms320 KiB
4Elfogadva2/23ms564 KiB
5Elfogadva2/23ms360 KiB
6Elfogadva3/33ms320 KiB
7Elfogadva3/33ms320 KiB
8Elfogadva3/33ms320 KiB
9Időlimit túllépés0/2254ms2424 KiB
10Időlimit túllépés0/2254ms2360 KiB
11Időlimit túllépés0/2245ms2492 KiB
12Időlimit túllépés0/2244ms2456 KiB
13Időlimit túllépés0/2245ms2540 KiB
14Időlimit túllépés0/2250ms2484 KiB
15Időlimit túllépés0/2250ms2536 KiB
16Időlimit túllépés0/2241ms2360 KiB
17Időlimit túllépés0/2241ms2484 KiB
18Időlimit túllépés0/2241ms2484 KiB
19Időlimit túllépés0/2243ms2520 KiB
20Időlimit túllépés0/2238ms2360 KiB
21Időlimit túllépés0/2238ms2368 KiB
22Időlimit túllépés0/3246ms2512 KiB
23Időlimit túllépés0/3245ms2508 KiB
24Időlimit túllépés0/3214ms2360 KiB