import java.util.*;

public class Main {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int N = sc.nextInt();
        ArrayList<Integer> sides = new ArrayList<>();

        for (int i = 0; i < N; i++) {
            sides.add(sc.nextInt());
        }

        Collections.sort(sides, Collections.reverseOrder());

        int max = sides.get(0);
        int sumOfremains = 0;

        for (int i = 1; i < sides.size(); i++) {
            sumOfremains += sides.get(i);
        }

        System.out.println(max < sumOfremains ? "Yes" : "No");
    }
}

 import java.util.*; util.* java public class Main {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int N = sc.nextInt();
        ArrayList<Integer> sides = new ArrayList<>();

        for (int i = 0; i < N; i++) {
            sides.add(sc.nextInt());
        }

        Collections.sort(sides, Collections.reverseOrder());

        int max = sides.get(0);
        int sumOfremains = 0;

        for (int i = 1; i < sides.size(); i++) {
            sumOfremains += sides.get(i);
        }

        System.out.println(max < sumOfremains ? "Yes" : "No");
    }
} Main public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int N = sc.nextInt();
        ArrayList<Integer> sides = new ArrayList<>();

        for (int i = 0; i < N; i++) {
            sides.add(sc.nextInt());
        }

        Collections.sort(sides, Collections.reverseOrder());

        int max = sides.get(0);
        int sumOfremains = 0;

        for (int i = 1; i < sides.size(); i++) {
            sumOfremains += sides.get(i);
        }

        System.out.println(max < sumOfremains ? "Yes" : "No");
    } main {

        Scanner sc = new Scanner(System.in);

        int N = sc.nextInt();
        ArrayList<Integer> sides = new ArrayList<>();

        for (int i = 0; i < N; i++) {
            sides.add(sc.nextInt());
        }

        Collections.sort(sides, Collections.reverseOrder());

        int max = sides.get(0);
        int sumOfremains = 0;

        for (int i = 1; i < sides.size(); i++) {
            sumOfremains += sides.get(i);
        }

        System.out.println(max < sumOfremains ? "Yes" : "No");
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc ArrayList<Integer> sides = new ArrayList<>(); sides new ArrayList<>() for (int i = 0; i < N; i++) {
            sides.add(sc.nextInt());
        } int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
            sides.add(sc.nextInt());
        } {
            sides.add(sc.nextInt());
        } sides.add(sc.nextInt()) sides.add sides sc.nextInt() sc.nextInt sc Collections.sort(sides, Collections.reverseOrder()) Collections.sort Collections sides Collections.reverseOrder() Collections.reverseOrder Collections int max = sides.get(0); max sides.get(0) sides.get sides 0 int sumOfremains = 0; sumOfremains 0 for (int i = 1; i < sides.size(); i++) {
            sumOfremains += sides.get(i);
        } int i = 1; int i = 1; i 1 i < sides.size() i sides.size() sides.size sides i++ i++ i {
            sumOfremains += sides.get(i);
        } {
            sumOfremains += sides.get(i);
        } sumOfremains += sides.get(i) sumOfremains sides.get(i) sides.get sides i System.out.println(max < sumOfremains ? "Yes" : "No") System.out.println System.out System System.out max < sumOfremains ? "Yes" : "No" max < sumOfremains max sumOfremains "Yes" "No" String[] args args public class Main {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int N = sc.nextInt();
        ArrayList<Integer> sides = new ArrayList<>();

        for (int i = 0; i < N; i++) {
            sides.add(sc.nextInt());
        }

        Collections.sort(sides, Collections.reverseOrder());

        int max = sides.get(0);
        int sumOfremains = 0;

        for (int i = 1; i < sides.size(); i++) {
            sumOfremains += sides.get(i);
        }

        System.out.println(max < sumOfremains ? "Yes" : "No");
    }
} public class Main {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int N = sc.nextInt();
        ArrayList<Integer> sides = new ArrayList<>();

        for (int i = 0; i < N; i++) {
            sides.add(sc.nextInt());
        }

        Collections.sort(sides, Collections.reverseOrder());

        int max = sides.get(0);
        int sumOfremains = 0;

        for (int i = 1; i < sides.size(); i++) {
            sumOfremains += sides.get(i);
        }

        System.out.println(max < sumOfremains ? "Yes" : "No");
    }
} Main
import java.util.*;

public class Main {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int N = sc.nextInt();
        ArrayList<Integer> sides = new ArrayList<>();

        for (int i = 0; i < N; i++) {
            sides.add(sc.nextInt());
        }

        Collections.sort(sides, Collections.reverseOrder());

        int max = sides.get(0);
        int sumOfremains = 0;

        for (int i = 1; i < sides.size(); i++) {
            sumOfremains += sides.get(i);
        }

        System.out.println(max < sumOfremains ? "Yes" : "No");
    }
}


