86152024-01-23 16:39:07Wrinkle1564Virágos rét (50 pont)cpp17Hibás válasz 45/5020ms4832 KiB
#include <iostream>

using std::cin;
using std::cout;

auto main() -> int {
    // retek szama, 1 <= `n` <= 100_000
    unsigned int n = 0;
    // ennyirol akar szedni: ennyi igaz kell, 1 <= `k` <= `n`
    unsigned int k = 0;
    cin >> n >> k;

    // retek szama, ahol szabad szedni
    unsigned int allowed = 0;
    // ideiglenes valtozo, ebbe olvasok
    bool tmp = false;
    for (unsigned int i = 0; i < n; i++) {
        // beolvasom
        cin >> tmp;
        // ha igaz, eltarolom
        if (tmp) {
            allowed++;
        }
    }

    // osszes lehetseges utvonal szama
    unsigned int sum = 0;
    // aktualis lehetseges utvonalak szama
    int curr = 0;
    for (unsigned int i = 0; i < allowed; i++) {
        // osszes_igaz - onmaga - (ennyin_akar_szedni - eleje+vege) - ennyivel_kevesebb_az_elsonel
        curr = allowed - 1 - (k - 2) - i;
        if (curr > 0) {
            sum += curr;
        }
    }
    // n * n+1 / 2
    cout << sum;

    cout << std::endl;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base45/50
1Elfogadva0/03ms1872 KiB
2Elfogadva0/03ms2128 KiB
3Elfogadva0/019ms2368 KiB
4Elfogadva2/23ms2416 KiB
5Elfogadva2/23ms2616 KiB
6Elfogadva2/23ms2872 KiB
7Elfogadva3/33ms3048 KiB
8Elfogadva3/33ms3284 KiB
9Elfogadva3/33ms3404 KiB
10Elfogadva2/23ms3612 KiB
11Elfogadva3/33ms3812 KiB
12Elfogadva2/23ms3988 KiB
13Elfogadva3/33ms4108 KiB
14Elfogadva2/218ms4200 KiB
15Hibás válasz0/218ms4292 KiB
16Elfogadva3/320ms4412 KiB
17Elfogadva3/319ms4532 KiB
18Elfogadva3/320ms4628 KiB
19Elfogadva3/319ms4708 KiB
20Elfogadva3/319ms4832 KiB
21Elfogadva3/320ms4832 KiB
22Hibás válasz0/319ms4708 KiB