This page is still under construction.

Parts of this page are still being built. What you see may change.

Strange Currency System

Interview

Time limit8sMemory limit512 MB

Summary
Given a multiset of up to 10000 bill values, find the smallest positive amount that cannot be formed as a subset sum.
Level

Medium4 of 10

Topics
Greedy, Sorting, Prefix sum, Array
Solved
No attempts yet

Problem

The currency system in the Kingdom of Yoax-Musty is strange and fairly inefficient. Like other countries, the kingdom has its own currency unit denoted by K $ (kingdom dollar). However, the Ministry of Finance issues bills for every value between 1 K $ and (231 - 1) K $ worth.

On the other hand, this system often enables people to make many different values just with a small number of bills. For example, if you have four bills of 1 K $, 2 K $, 4 K $, and 8 K $ worth respectively, you can make any values from 1 K $ to 15 K $.

In this problem, you are requested to write a program that finds the minimum value that cannot be made with a given set (multiset in a mathematical sense) of bills. For the case with the four bills (1 K $, 2 K $, 4 K $, and 8 K $), since you can make any values up to 15 K $, your program should report 16 K $.

Input

The input consists of two lines. The first line contains an integer N (1 ≤ N ≤ 10000), the number of bills. The second line contains N integers, each of which represents the value of a bill in K $. There may be multiple bills of the same value.

Output

Print the minimum value unable to be made on a line. The value should be given in K $ and without any currency sign or name.

Examples2

  1. Example 1

    Input
    4
    1 2 4 8
    
    Expected output
    16
    
  2. Example 2

    Input
    5
    1 1 3 11 2
    
    Expected output
    8