257702026-03-01 20:47:00horvayzsomborVirágos rét (50 pont)cpp17Elfogadva 50/5010ms880 KiB
#include <iostream>
#include <vector>

using namespace std;

int main()
{
    int n, k;
    cin >> n >> k;

    vector<char> v(n);

    for(int i = 0; i < n; i++)
    {
        cin >> v[i];
    }

    vector<int> s(n + 1);

    for(int i = n - 1; i >= 0; i--)
    {
        s[i] = s[i + 1];   
        if(v[i] == '1') s[i]++; 
    }

    long long ans = 0;

    int cnt = 0;
    int j = 0;

    for(int i = 0; i < n; i++)
    {
        if(v[i] == '1')
        {
            while(j < n && cnt != k)
            {
                if(v[j] == '1') cnt++;
                j++;
            }

            if(cnt == k) ans += s[j - 1];

            cnt--;
        }
    }

    cout << ans;

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/02ms316 KiB
2Elfogadva0/01ms500 KiB
3Elfogadva0/09ms820 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva3/31ms316 KiB
8Elfogadva3/31ms316 KiB
9Elfogadva3/31ms316 KiB
10Elfogadva2/21ms316 KiB
11Elfogadva3/31ms316 KiB
12Elfogadva2/21ms508 KiB
13Elfogadva3/31ms316 KiB
14Elfogadva2/28ms868 KiB
15Elfogadva2/28ms748 KiB
16Elfogadva3/310ms880 KiB
17Elfogadva3/39ms820 KiB
18Elfogadva3/310ms756 KiB
19Elfogadva3/38ms756 KiB
20Elfogadva3/38ms820 KiB
21Elfogadva3/310ms716 KiB
22Elfogadva3/39ms748 KiB