58392023-10-03 17:57:43kristofVállalkozócpp17Hibás válasz 0/4035ms5184 KiB
#include <iostream>
#include <algorithm>

using namespace std;

int main(){

    //* get inputs
    int N, M;
    cin >> N >> M;

    int munkaora[N]; // 2 0 6
    for(int i = 0; i < N; i++){
        cin >> munkaora[i];
    }

    int hatarido[M]; // 1 2 2 3 3 
    for(int i = 0; i < M; i++){
        cin >> hatarido[i];
    }

    sort(hatarido, hatarido+M);


    int j = 0;
    int n = 0;

    for(int i = 0; i < N; i++){
        while(munkaora[i]>=0 && hatarido[j] >= i+1){
            if( hatarido[i] <  i+1){
                j++;
            }
            else{
                n++;
                j++;
                munkaora[i]--;
            }

            
        }
    }
    /*for i,v in enumerate(munkaora):
        while h[j] <= i+1 and v!=0:
            n+=1
            j+=1
            v-=1
    */
    cout << n;

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/40
1Elfogadva0/03ms1876 KiB
2Hibás válasz0/035ms2844 KiB
3Hibás válasz0/22ms2280 KiB
4Hibás válasz0/23ms2496 KiB
5Hibás válasz0/23ms2708 KiB
6Hibás válasz0/23ms2824 KiB
7Hibás válasz0/24ms3052 KiB
8Hibás válasz0/23ms3108 KiB
9Hibás válasz0/24ms3392 KiB
10Hibás válasz0/23ms3496 KiB
11Hibás válasz0/24ms3624 KiB
12Hibás válasz0/24ms3692 KiB
13Hibás válasz0/24ms3844 KiB
14Hibás válasz0/24ms4040 KiB
15Hibás válasz0/212ms4496 KiB
16Hibás válasz0/212ms4432 KiB
17Hibás válasz0/216ms4520 KiB
18Hibás válasz0/212ms4464 KiB
19Hibás válasz0/214ms4492 KiB
20Hibás válasz0/218ms4916 KiB
21Hibás válasz0/225ms4944 KiB
22Hibás válasz0/235ms5184 KiB