生涯回忆录
题号:NC213975
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

树剖姐姐想写OI生涯回忆录.

树剖姐姐有n个回忆,第i个回忆有一个正整数权值ai.

这些回忆构成了一个集合.

由于回忆太多,树剖姐姐不一定能全部写完,于是她决定选择集合的一个子集写生涯回忆录(选择的子集可能为空,这意味着树剖把回忆录咕了).

容易知道一共有2n种可能的生涯回忆录.

当然,写出的生涯回忆录往往会有遗憾,定义一个生涯回忆录的遗憾为:最小的正整数x使得 写出这个生涯回忆录的集合所包含的所有回忆中,没有权值ai使得ai=x

现在树剖想知道,她所有可能写出的生涯回忆录的遗憾之和对20000311取模的结果.


输入描述:

第一行一个正整数n.

第二行n个正整数,第i个数是ai.

输出描述:

一行一个数,表示答案
示例1

输入

复制
7
1 1 1 2 3 3 3

输出

复制
345

备注: