2082021-02-07 18:21:47kovacs.peter.18fZenehallgatáscpp11Időlimit túllépés 0/50298ms4856 KiB
#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

int find(int value, vector<int> v) {
	int b = 0;
	int e = v.size() - 1;
	do {
		int m = (b + e) / 2;
		if (v[m] == value) {
			return m;
		}
		if (v[m] > value) {
			e = m - 1;
		}
		else {
			b = m + 1;
		}
	} while (b != e);
	return b;
}

int main() {
	cin.sync_with_stdio(false);
	cin.tie(nullptr);

	int N, K;
	cin >> N >> K;
	vector<int> songS(N);
	cin >> songS[0];
	for (int i = 1; i < N; i++) {
		cin >> songS[i];
		songS[i] += songS[i - 1];
	}
	vector<int> timeS(K);
	for (int i = 0; i < K; i++) {
		int k;
		cin >> k;
		cout << find(k % songS[N - 1], songS) + 1 << " ";
	}
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/50
1Elfogadva0/02ms1760 KiB
2Időlimit túllépés0/0216ms2884 KiB
3Időlimit túllépés0/2217ms1708 KiB
4Időlimit túllépés0/2206ms1692 KiB
5Időlimit túllépés0/2228ms1616 KiB
6Időlimit túllépés0/3298ms1660 KiB
7Időlimit túllépés0/3294ms1676 KiB
8Időlimit túllépés0/3296ms1692 KiB
9Időlimit túllépés0/2252ms3432 KiB
10Időlimit túllépés0/2293ms4140 KiB
11Időlimit túllépés0/2280ms4812 KiB
12Időlimit túllépés0/2298ms4796 KiB
13Időlimit túllépés0/2298ms4796 KiB
14Időlimit túllépés0/2298ms4728 KiB
15Időlimit túllépés0/2296ms4728 KiB
16Időlimit túllépés0/2294ms4716 KiB
17Időlimit túllépés0/2298ms4728 KiB
18Időlimit túllépés0/2296ms4728 KiB
19Időlimit túllépés0/2243ms4732 KiB
20Időlimit túllépés0/2277ms4664 KiB
21Időlimit túllépés0/2279ms4728 KiB
22Időlimit túllépés0/3298ms4728 KiB
23Időlimit túllépés0/3298ms4668 KiB
24Időlimit túllépés0/3250ms4856 KiB