7326 2024. 01. 07 12:01:58 Laci3000 Zenehallgatás cpp17 Időlimit túllépés 15/50 300ms 4196 KiB
// 2021 nt masodik.cpp : This file contains the 'main' function. Program execution begins and ends there.
//

#include <iostream>
#include <string>
#include <vector>
#include <unordered_map>
using namespace std;


void oszthato_e_31el() {
    long long bemeneti_szam; cin >> bemeneti_szam;

    vector<long long>lepesek;
    if (bemeneti_szam % 31 == 0) {
        cout << "IGEN" << '\n';
    }
    else {
        cout << "NEM" << '\n';
    }
    
    while (bemeneti_szam > 30){
        string szam = to_string(bemeneti_szam);
       // cerr << bemeneti_szam - (szam[szam.size() - 1] - '0') << '\n';
        bemeneti_szam = (bemeneti_szam - (szam[szam.size() - 1] - '0')) / 10 - 3 * (szam[szam.size() - 1] - '0');
        //cerr << bemeneti_szam << '\n';
        if (bemeneti_szam >= 0) {
            lepesek.push_back(bemeneti_szam);
        }
    }
    for (size_t i = 0; i < lepesek.size(); i++)
    {
        cout << lepesek[i] << " ";
    }
}


void hatekony_tori() {
    unordered_map<int, bool>szamok;
    int mennyiseg; cin >> mennyiseg;
    vector<int>listS(mennyiseg);
    int kulonbozoek = 1;
    for (int i = 0; i < mennyiseg; i++) {
        cin >> listS[i];

    }
    int utolso_uj_szam = mennyiseg - 1;
    szamok[listS[utolso_uj_szam]] = true;
    
    for(int i = mennyiseg - 1; i >= 0; i--){
        if (!szamok[listS[i]]) {
            utolso_uj_szam = i;
            szamok[listS[i]] = true;
            kulonbozoek++;
        }
    }
    cout << utolso_uj_szam + 1;
}

void melyik_zene_szol() {
    int zenek, idopontok; cin >> zenek >> idopontok;
    vector<int>zeneS(zenek);
    vector<int>idopontS(idopontok);

    int szam_osszeg = 0;

    for (int i = 0; i < zenek; i++) {
        cin >> zeneS[i];
        szam_osszeg += zeneS[i];
    }
    for (int i = 0; i < idopontok; i++) {
        cin >> idopontS[i];
        idopontS[i] %= szam_osszeg;
        if (idopontS[i] == 0) {
            cout << zenek;
        }
        else {
            int a = 0;
            while (idopontS[i] > 0) {
                idopontS[i] -= zeneS[a];
                a++;
                
            }
            cout << a << " ";
        }
    }
   

}


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

Részfeladat Összpont Teszt Verdikt Idő Memória
base 15/50
1 Elfogadva 0/0 3ms 1828 KiB
2 Időlimit túllépés 0/0 263ms 2240 KiB
3 Elfogadva 2/2 3ms 2320 KiB
4 Elfogadva 2/2 3ms 2332 KiB
5 Elfogadva 2/2 3ms 2460 KiB
6 Elfogadva 3/3 3ms 2692 KiB
7 Elfogadva 3/3 3ms 2860 KiB
8 Elfogadva 3/3 3ms 3072 KiB
9 Időlimit túllépés 0/2 300ms 3072 KiB
10 Időlimit túllépés 0/2 238ms 3380 KiB
11 Időlimit túllépés 0/2 275ms 3784 KiB
12 Időlimit túllépés 0/2 238ms 3800 KiB
13 Időlimit túllépés 0/2 275ms 3864 KiB
14 Időlimit túllépés 0/2 270ms 3872 KiB
15 Időlimit túllépés 0/2 287ms 3888 KiB
16 Időlimit túllépés 0/2 254ms 3972 KiB
17 Időlimit túllépés 0/2 266ms 3896 KiB
18 Időlimit túllépés 0/2 266ms 3972 KiB
19 Időlimit túllépés 0/2 266ms 3980 KiB
20 Időlimit túllépés 0/2 259ms 4196 KiB
21 Időlimit túllépés 0/2 263ms 4172 KiB
22 Időlimit túllépés 0/3 259ms 4160 KiB
23 Időlimit túllépés 0/3 246ms 4092 KiB
24 Időlimit túllépés 0/3 263ms 4044 KiB