#include <stdio.h>
#include <stdlib.h>

int cmp(const void *n1, const void *n2)
{
    return *(double *)n2 - *(double *)n1;
}

int main(void)
{
    int flag = 1;
    double inputN, inputM, borderLine, *inputA;
    double voteCount = 0;
    scanf("%lf%lf", &inputN, &inputM);
    inputA = (double *)malloc(sizeof(double) * inputN);
    for (int count = 0; count < inputN; count++)
    {
        scanf("%lf", &inputA[count]);
        voteCount += inputA[count];
    }
    borderLine = voteCount / (4 * inputM);
    qsort(inputA, inputN, sizeof(double), cmp);
    for (int count = 0; count < inputM; count++)
    {
        if (inputA[count] < borderLine)
        {
            flag = 0;
        }
    }
    if (flag)
    {
        printf("Yes");
    }
    else
    {
        printf("No");
    }
    free(inputA);

    return 0;
}