import java.io.*;
import java.util.StringTokenizer;
import java.util.Scanner;

public final class Main{
    public static void main(String[] args){
        Scanner stdIn = new Scanner(System.in);
        double n = stdIn.nextDouble();
        double[] a = new double[(int)n];
        for(int i=0; i<(int)n; i++){
            a[i] = stdIn.nextDouble();
        }
        
        double up = 1;
        double down = 0.0;
        for(int i=0; i<a.length; i++){
            up *= a[i];
        }
        for(int i=0; i<a.length; i++){
            down += up/a[i];
        }

        System.out.println(up/down);
    }
}

class FastScanner {
    private BufferedReader reader = null;
    private StringTokenizer tokenizer = null;

    public FastScanner(InputStream in) {
        reader = new BufferedReader(new InputStreamReader(in));
        tokenizer = null;
    }

    public String next() {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
        return tokenizer.nextToken();
    }

    public String nextLine() {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                return reader.readLine();
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }

        return tokenizer.nextToken("\n");
    }

    public long nextLong() {
        return Long.parseLong(next());
    }
    
    public long nextInt() {
        return Integer.parseInt(next());
    }

} import java.io.*; io.* java import java.util.StringTokenizer; StringTokenizer java.util import java.util.Scanner; Scanner java.util public final class Main{
    public static void main(String[] args){
        Scanner stdIn = new Scanner(System.in);
        double n = stdIn.nextDouble();
        double[] a = new double[(int)n];
        for(int i=0; i<(int)n; i++){
            a[i] = stdIn.nextDouble();
        }
        
        double up = 1;
        double down = 0.0;
        for(int i=0; i<a.length; i++){
            up *= a[i];
        }
        for(int i=0; i<a.length; i++){
            down += up/a[i];
        }

        System.out.println(up/down);
    }
} Main public static void main(String[] args){
        Scanner stdIn = new Scanner(System.in);
        double n = stdIn.nextDouble();
        double[] a = new double[(int)n];
        for(int i=0; i<(int)n; i++){
            a[i] = stdIn.nextDouble();
        }
        
        double up = 1;
        double down = 0.0;
        for(int i=0; i<a.length; i++){
            up *= a[i];
        }
        for(int i=0; i<a.length; i++){
            down += up/a[i];
        }

        System.out.println(up/down);
    } main {
        Scanner stdIn = new Scanner(System.in);
        double n = stdIn.nextDouble();
        double[] a = new double[(int)n];
        for(int i=0; i<(int)n; i++){
            a[i] = stdIn.nextDouble();
        }
        
        double up = 1;
        double down = 0.0;
        for(int i=0; i<a.length; i++){
            up *= a[i];
        }
        for(int i=0; i<a.length; i++){
            down += up/a[i];
        }

        System.out.println(up/down);
    } Scanner stdIn = new Scanner(System.in); stdIn new Scanner(System.in) double n = stdIn.nextDouble(); n stdIn.nextDouble() stdIn.nextDouble stdIn double[] a = new double[(int)n]; a new double[(int)n] (int)n for(int i=0; i<(int)n; i++){
            a[i] = stdIn.nextDouble();
        } int i=0; int i=0; i 0 i<(int)n i (int)n i++ i++ i {
            a[i] = stdIn.nextDouble();
        } {
            a[i] = stdIn.nextDouble();
        } a[i] = stdIn.nextDouble() a[i] a i stdIn.nextDouble() stdIn.nextDouble stdIn double up = 1; up 1 double down = 0.0; down 0.0 for(int i=0; i<a.length; i++){
            up *= a[i];
        } int i=0; int i=0; i 0 i<a.length i a.length a a.length i++ i++ i {
            up *= a[i];
        } {
            up *= a[i];
        } up *= a[i] up a[i] a i for(int i=0; i<a.length; i++){
            down += up/a[i];
        } int i=0; int i=0; i 0 i<a.length i a.length a a.length i++ i++ i {
            down += up/a[i];
        } {
            down += up/a[i];
        } down += up/a[i] down up/a[i] up a[i] a i System.out.println(up/down) System.out.println System.out System System.out up/down up down String[] args args class FastScanner {
    private BufferedReader reader = null;
    private StringTokenizer tokenizer = null;

    public FastScanner(InputStream in) {
        reader = new BufferedReader(new InputStreamReader(in));
        tokenizer = null;
    }

    public String next() {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
        return tokenizer.nextToken();
    }

    public String nextLine() {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                return reader.readLine();
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }

        return tokenizer.nextToken("\n");
    }

    public long nextLong() {
        return Long.parseLong(next());
    }
    
    public long nextInt() {
        return Integer.parseInt(next());
    }

} FastScanner private BufferedReader reader = null; reader null private StringTokenizer tokenizer = null; tokenizer null public FastScanner(InputStream in) {
        reader = new BufferedReader(new InputStreamReader(in));
        tokenizer = null;
    } FastScanner {
        reader = new BufferedReader(new InputStreamReader(in));
        tokenizer = null;
    } reader = new BufferedReader(new InputStreamReader(in)) reader new BufferedReader(new InputStreamReader(in)) tokenizer = null tokenizer null InputStream in in public String next() {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
        return tokenizer.nextToken();
    } next {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
        return tokenizer.nextToken();
    } if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        } tokenizer == null || !tokenizer.hasMoreTokens() tokenizer == null tokenizer null !tokenizer.hasMoreTokens() tokenizer.hasMoreTokens() tokenizer.hasMoreTokens tokenizer {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        } try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            } catch (IOException e) {
                throw new RuntimeException(e);
            } IOException e {
                throw new RuntimeException(e);
            } throw new RuntimeException(e); new RuntimeException(e) {
                tokenizer = new StringTokenizer(reader.readLine());
            } tokenizer = new StringTokenizer(reader.readLine()) tokenizer new StringTokenizer(reader.readLine()) return tokenizer.nextToken(); tokenizer.nextToken() tokenizer.nextToken tokenizer public String nextLine() {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                return reader.readLine();
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }

        return tokenizer.nextToken("\n");
    } nextLine {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                return reader.readLine();
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }

        return tokenizer.nextToken("\n");
    } if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                return reader.readLine();
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        } tokenizer == null || !tokenizer.hasMoreTokens() tokenizer == null tokenizer null !tokenizer.hasMoreTokens() tokenizer.hasMoreTokens() tokenizer.hasMoreTokens tokenizer {
            try {
                return reader.readLine();
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        } try {
                return reader.readLine();
            } catch (IOException e) {
                throw new RuntimeException(e);
            } catch (IOException e) {
                throw new RuntimeException(e);
            } IOException e {
                throw new RuntimeException(e);
            } throw new RuntimeException(e); new RuntimeException(e) {
                return reader.readLine();
            } return reader.readLine(); reader.readLine() reader.readLine reader return tokenizer.nextToken("\n"); tokenizer.nextToken("\n") tokenizer.nextToken tokenizer "\n" public long nextLong() {
        return Long.parseLong(next());
    } nextLong {
        return Long.parseLong(next());
    } return Long.parseLong(next()); Long.parseLong(next()) Long.parseLong Long next() next public long nextInt() {
        return Integer.parseInt(next());
    } nextInt {
        return Integer.parseInt(next());
    } return Integer.parseInt(next()); Integer.parseInt(next()) Integer.parseInt Integer next() next public final class Main{
    public static void main(String[] args){
        Scanner stdIn = new Scanner(System.in);
        double n = stdIn.nextDouble();
        double[] a = new double[(int)n];
        for(int i=0; i<(int)n; i++){
            a[i] = stdIn.nextDouble();
        }
        
        double up = 1;
        double down = 0.0;
        for(int i=0; i<a.length; i++){
            up *= a[i];
        }
        for(int i=0; i<a.length; i++){
            down += up/a[i];
        }

        System.out.println(up/down);
    }
} public final class Main{
    public static void main(String[] args){
        Scanner stdIn = new Scanner(System.in);
        double n = stdIn.nextDouble();
        double[] a = new double[(int)n];
        for(int i=0; i<(int)n; i++){
            a[i] = stdIn.nextDouble();
        }
        
        double up = 1;
        double down = 0.0;
        for(int i=0; i<a.length; i++){
            up *= a[i];
        }
        for(int i=0; i<a.length; i++){
            down += up/a[i];
        }

        System.out.println(up/down);
    }
} Main
import java.io.*;
import java.util.StringTokenizer;
import java.util.Scanner;

public final class Main{
    public static void main(String[] args){
        Scanner stdIn = new Scanner(System.in);
        double n = stdIn.nextDouble();
        double[] a = new double[(int)n];
        for(int i=0; i<(int)n; i++){
            a[i] = stdIn.nextDouble();
        }
        
        double up = 1;
        double down = 0.0;
        for(int i=0; i<a.length; i++){
            up *= a[i];
        }
        for(int i=0; i<a.length; i++){
            down += up/a[i];
        }

        System.out.println(up/down);
    }
}

class FastScanner {
    private BufferedReader reader = null;
    private StringTokenizer tokenizer = null;

    public FastScanner(InputStream in) {
        reader = new BufferedReader(new InputStreamReader(in));
        tokenizer = null;
    }

    public String next() {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                tokenizer = new StringTokenizer(reader.readLine());
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
        return tokenizer.nextToken();
    }

    public String nextLine() {
        if (tokenizer == null || !tokenizer.hasMoreTokens()) {
            try {
                return reader.readLine();
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }

        return tokenizer.nextToken("\n");
    }

    public long nextLong() {
        return Long.parseLong(next());
    }
    
    public long nextInt() {
        return Integer.parseInt(next());
    }

}
