122842024-12-11 12:10:19szasztundeZenehallgatáscpp17Időlimit túllépés 15/50257ms1352 KiB
//#include <iostream>
#include <bits/stdc++.h>
using namespace std;
int a[100001]={0};
int main()
{
    /*ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);*/
    int n,k,x,e,u,jo,kk;
    cin>>n>>k;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
        a[i]=a[i-1]+a[i];
    }
    for(int i=1;i<=k;i++)
    {
        cin>>x;
        x=x%a[n];
        if (x<a[1]) cout<<1<<" ";
        else if(x>a[n-1]) cout<<n<<" ";
        else{
            e=1; u=n; jo=0;
            while(e<=u && !jo)
            {
                kk=(e+u)/2;
                if(a[kk]>=x && a[kk-1]<x) jo=kk;
                else if(a[kk+1]>=x && a[kk]<x) jo=kk+1;
                else if(x>a[kk]) e=kk+1;
                else u=kk-1;
            }
            cout<<jo<<" ";
        }
    }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base15/50
1Elfogadva0/01ms508 KiB
2Időlimit túllépés0/0247ms1332 KiB
3Elfogadva2/23ms320 KiB
4Elfogadva2/23ms320 KiB
5Elfogadva2/23ms320 KiB
6Elfogadva3/33ms320 KiB
7Elfogadva3/33ms320 KiB
8Elfogadva3/33ms320 KiB
9Időlimit túllépés0/2257ms1332 KiB
10Időlimit túllépés0/2256ms1352 KiB
11Időlimit túllépés0/2250ms1172 KiB
12Időlimit túllépés0/2246ms1336 KiB
13Időlimit túllépés0/2254ms1312 KiB
14Időlimit túllépés0/2254ms1340 KiB
15Időlimit túllépés0/2247ms1248 KiB
16Időlimit túllépés0/2243ms1332 KiB
17Időlimit túllépés0/2254ms1332 KiB
18Időlimit túllépés0/2245ms1336 KiB
19Időlimit túllépés0/2250ms1336 KiB
20Időlimit túllépés0/2238ms1336 KiB
21Időlimit túllépés0/2241ms1336 KiB
22Időlimit túllépés0/3248ms1336 KiB
23Időlimit túllépés0/3248ms1212 KiB
24Időlimit túllépés0/3221ms1336 KiB