128562025-01-02 16:22:14BucsMateZenehallgatáscpp17Időlimit túllépés 4/50254ms1368 KiB
#include <iostream>

using namespace std;

int dalKezdet[100001] = {};

int binKereses(int idopont, int N)
{
    int bal = 1, jobb = N;
    int kozep;
    while(bal < jobb){
        kozep = (bal + jobb + 1)/2;
        if(dalKezdet[kozep] < idopont){
            bal = kozep;
        }
        else{
            jobb = kozep-1;
        }
    }
    return bal;
}

int main()
{
    int N, K;
    cin >> N >> K;
    dalKezdet[1] = 1;
    int temp;
    for(int i = 2; i <= N; i++){
        cin >> temp;
        dalKezdet[i] = dalKezdet[i-1] + temp;
    }
    cin >> temp;
    int hossz = dalKezdet[N] + temp - 1;

    for(int i = 0; i < K; i++){
        int idopont;
        cin >> idopont;
        idopont = (idopont - 1)%hossz + 1;
        cout << binKereses(idopont, N) << " ";
    }
    cout << endl;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base4/50
1Elfogadva0/01ms320 KiB
2Időlimit túllépés0/0252ms1336 KiB
3Hibás válasz0/23ms320 KiB
4Elfogadva2/23ms508 KiB
5Elfogadva2/23ms320 KiB
6Hibás válasz0/33ms320 KiB
7Hibás válasz0/33ms320 KiB
8Hibás válasz0/33ms320 KiB
9Időlimit túllépés0/2248ms1352 KiB
10Időlimit túllépés0/2248ms1324 KiB
11Időlimit túllépés0/2254ms1240 KiB
12Időlimit túllépés0/2252ms1336 KiB
13Időlimit túllépés0/2243ms1336 KiB
14Időlimit túllépés0/2243ms1220 KiB
15Időlimit túllépés0/2246ms1176 KiB
16Időlimit túllépés0/2252ms1336 KiB
17Időlimit túllépés0/2244ms1260 KiB
18Időlimit túllépés0/2241ms1172 KiB
19Időlimit túllépés0/2244ms1348 KiB
20Időlimit túllépés0/2238ms1316 KiB
21Időlimit túllépés0/2238ms1336 KiB
22Időlimit túllépés0/3246ms1312 KiB
23Időlimit túllépés0/3244ms1368 KiB
24Időlimit túllépés0/3216ms1320 KiB