import java.util.*;

public class Main {
    public static void main(String[] args) {
        Main main = new Main();
        main.run();
    }
    
    // 変数一覧
    int n;
    int m;
    int[] a;
    double total;
    double vote;
    boolean res = true;

    public void run() {
        // 入力情報取得
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        a = new int[n+1];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
            total += a[i];
        }
        sc.close();
        
        // 解答処理
        solve();
    }
    
    private void solve() {
        vote = total / (4 * m);
        a = sort(a, 1);

        for (int i = 0; i < m; i++) {
            if (vote > a[i]) {
                res = false;
            }
        }
        if (res) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        }
    }

    // 配列ソート(0:ASC 1:DESC)
    private int[] sort(int[] l, int flg) {
        ArrayList list = new ArrayList();
        for (int i = 0; i < l.length; i++) {
            list.add(l[i]);
        }
        // 昇順
        if (flg == 0)
            list.sort(Comparator.naturalOrder());
        // 降順
        if (flg == 1)
            list.sort(Comparator.reverseOrder());
        for (int i = 0; i < list.size(); i++) {
            l[i] = (int) list.get(i);
        }
        return l;
    }
} import java.util.*; util.* java public class Main {
    public static void main(String[] args) {
        Main main = new Main();
        main.run();
    }
    
    // 変数一覧
    int n;
    int m;
    int[] a;
    double total;
    double vote;
    boolean res = true;

    public void run() {
        // 入力情報取得
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        a = new int[n+1];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
            total += a[i];
        }
        sc.close();
        
        // 解答処理
        solve();
    }
    
    private void solve() {
        vote = total / (4 * m);
        a = sort(a, 1);

        for (int i = 0; i < m; i++) {
            if (vote > a[i]) {
                res = false;
            }
        }
        if (res) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        }
    }

    // 配列ソート(0:ASC 1:DESC)
    private int[] sort(int[] l, int flg) {
        ArrayList list = new ArrayList();
        for (int i = 0; i < l.length; i++) {
            list.add(l[i]);
        }
        // 昇順
        if (flg == 0)
            list.sort(Comparator.naturalOrder());
        // 降順
        if (flg == 1)
            list.sort(Comparator.reverseOrder());
        for (int i = 0; i < list.size(); i++) {
            l[i] = (int) list.get(i);
        }
        return l;
    }
} Main // 変数一覧
    int n; n int m; m int[] a; a double total; total double vote; vote boolean res = true; res true public static void main(String[] args) {
        Main main = new Main();
        main.run();
    } main {
        Main main = new Main();
        main.run();
    } Main main = new Main(); main new Main() main.run() main.run main String[] args args public void run() {
        // 入力情報取得
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        a = new int[n+1];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
            total += a[i];
        }
        sc.close();
        
        // 解答処理
        solve();
    } run {
        // 入力情報取得
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        a = new int[n+1];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
            total += a[i];
        }
        sc.close();
        
        // 解答処理
        solve();
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) n = sc.nextInt() n sc.nextInt() sc.nextInt sc m = sc.nextInt() m sc.nextInt() sc.nextInt sc a = new int[n+1] a new int[n+1] n+1 n 1 for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
            total += a[i];
        } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
            a[i] = sc.nextInt();
            total += a[i];
        } {
            a[i] = sc.nextInt();
            total += a[i];
        } a[i] = sc.nextInt() a[i] a i sc.nextInt() sc.nextInt sc total += a[i] total a[i] a i sc.close() sc.close sc solve() solve private void solve() {
        vote = total / (4 * m);
        a = sort(a, 1);

        for (int i = 0; i < m; i++) {
            if (vote > a[i]) {
                res = false;
            }
        }
        if (res) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        }
    } solve {
        vote = total / (4 * m);
        a = sort(a, 1);

        for (int i = 0; i < m; i++) {
            if (vote > a[i]) {
                res = false;
            }
        }
        if (res) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        }
    } vote = total / (4 * m) vote total / (4 * m) total (4 * m) 4 m a = sort(a, 1) a sort(a, 1) sort a 1 for (int i = 0; i < m; i++) {
            if (vote > a[i]) {
                res = false;
            }
        } int i = 0; int i = 0; i 0 i < m i m i++ i++ i {
            if (vote > a[i]) {
                res = false;
            }
        } {
            if (vote > a[i]) {
                res = false;
            }
        } if (vote > a[i]) {
                res = false;
            } vote > a[i] vote a[i] a i {
                res = false;
            } res = false res false if (res) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        } res {
            System.out.println("Yes");
        } System.out.println("Yes") System.out.println System.out System System.out "Yes" {
            System.out.println("No");
        } System.out.println("No") System.out.println System.out System System.out "No" // 配列ソート(0:ASC 1:DESC)
    private int[] sort(int[] l, int flg) {
        ArrayList list = new ArrayList();
        for (int i = 0; i < l.length; i++) {
            list.add(l[i]);
        }
        // 昇順
        if (flg == 0)
            list.sort(Comparator.naturalOrder());
        // 降順
        if (flg == 1)
            list.sort(Comparator.reverseOrder());
        for (int i = 0; i < list.size(); i++) {
            l[i] = (int) list.get(i);
        }
        return l;
    } sort {
        ArrayList list = new ArrayList();
        for (int i = 0; i < l.length; i++) {
            list.add(l[i]);
        }
        // 昇順
        if (flg == 0)
            list.sort(Comparator.naturalOrder());
        // 降順
        if (flg == 1)
            list.sort(Comparator.reverseOrder());
        for (int i = 0; i < list.size(); i++) {
            l[i] = (int) list.get(i);
        }
        return l;
    } ArrayList list = new ArrayList(); list new ArrayList() for (int i = 0; i < l.length; i++) {
            list.add(l[i]);
        } int i = 0; int i = 0; i 0 i < l.length i l.length l l.length i++ i++ i {
            list.add(l[i]);
        } {
            list.add(l[i]);
        } list.add(l[i]) list.add list l[i] l i if (flg == 0)
            list.sort(Comparator.naturalOrder()); flg == 0 flg 0 list.sort(Comparator.naturalOrder()) list.sort list Comparator.naturalOrder() Comparator.naturalOrder Comparator if (flg == 1)
            list.sort(Comparator.reverseOrder()); flg == 1 flg 1 list.sort(Comparator.reverseOrder()) list.sort list Comparator.reverseOrder() Comparator.reverseOrder Comparator for (int i = 0; i < list.size(); i++) {
            l[i] = (int) list.get(i);
        } int i = 0; int i = 0; i 0 i < list.size() i list.size() list.size list i++ i++ i {
            l[i] = (int) list.get(i);
        } {
            l[i] = (int) list.get(i);
        } l[i] = (int) list.get(i) l[i] l i (int) list.get(i) list.get list i return l; l int[] l l int flg flg public class Main {
    public static void main(String[] args) {
        Main main = new Main();
        main.run();
    }
    
    // 変数一覧
    int n;
    int m;
    int[] a;
    double total;
    double vote;
    boolean res = true;

    public void run() {
        // 入力情報取得
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        a = new int[n+1];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
            total += a[i];
        }
        sc.close();
        
        // 解答処理
        solve();
    }
    
    private void solve() {
        vote = total / (4 * m);
        a = sort(a, 1);

        for (int i = 0; i < m; i++) {
            if (vote > a[i]) {
                res = false;
            }
        }
        if (res) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        }
    }

    // 配列ソート(0:ASC 1:DESC)
    private int[] sort(int[] l, int flg) {
        ArrayList list = new ArrayList();
        for (int i = 0; i < l.length; i++) {
            list.add(l[i]);
        }
        // 昇順
        if (flg == 0)
            list.sort(Comparator.naturalOrder());
        // 降順
        if (flg == 1)
            list.sort(Comparator.reverseOrder());
        for (int i = 0; i < list.size(); i++) {
            l[i] = (int) list.get(i);
        }
        return l;
    }
} public class Main {
    public static void main(String[] args) {
        Main main = new Main();
        main.run();
    }
    
    // 変数一覧
    int n;
    int m;
    int[] a;
    double total;
    double vote;
    boolean res = true;

    public void run() {
        // 入力情報取得
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        a = new int[n+1];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
            total += a[i];
        }
        sc.close();
        
        // 解答処理
        solve();
    }
    
    private void solve() {
        vote = total / (4 * m);
        a = sort(a, 1);

        for (int i = 0; i < m; i++) {
            if (vote > a[i]) {
                res = false;
            }
        }
        if (res) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        }
    }

    // 配列ソート(0:ASC 1:DESC)
    private int[] sort(int[] l, int flg) {
        ArrayList list = new ArrayList();
        for (int i = 0; i < l.length; i++) {
            list.add(l[i]);
        }
        // 昇順
        if (flg == 0)
            list.sort(Comparator.naturalOrder());
        // 降順
        if (flg == 1)
            list.sort(Comparator.reverseOrder());
        for (int i = 0; i < list.size(); i++) {
            l[i] = (int) list.get(i);
        }
        return l;
    }
} Main
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Main main = new Main();
        main.run();
    }
    
    // 変数一覧
    int n;
    int m;
    int[] a;
    double total;
    double vote;
    boolean res = true;

    public void run() {
        // 入力情報取得
        Scanner sc = new Scanner(System.in);
        n = sc.nextInt();
        m = sc.nextInt();
        a = new int[n+1];
        for (int i = 0; i < n; i++) {
            a[i] = sc.nextInt();
            total += a[i];
        }
        sc.close();
        
        // 解答処理
        solve();
    }
    
    private void solve() {
        vote = total / (4 * m);
        a = sort(a, 1);

        for (int i = 0; i < m; i++) {
            if (vote > a[i]) {
                res = false;
            }
        }
        if (res) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        }
    }

    // 配列ソート(0:ASC 1:DESC)
    private int[] sort(int[] l, int flg) {
        ArrayList list = new ArrayList();
        for (int i = 0; i < l.length; i++) {
            list.add(l[i]);
        }
        // 昇順
        if (flg == 0)
            list.sort(Comparator.naturalOrder());
        // 降順
        if (flg == 1)
            list.sort(Comparator.reverseOrder());
        for (int i = 0; i < list.size(); i++) {
            l[i] = (int) list.get(i);
        }
        return l;
    }
}
