该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
一个集合被称之为可平分的,如果它可以被分为两部分,且两部分的元素之和相等。空集也算可平分的。
给定一个集合 a1,a2,a3,…,an,请统计它有多少子集是可平分的。(本题中所指的集合允许元素相等)
输入
第一行:单个整数 n 表示集合的大小
第二行:n 个整数表示 a1,a2,a3,…,an
输出
单个整数:表示可平分的子集数量。
样例输入 #1
4
2 2 4 8
样例输出 #1
4
{}
{2 2}
{2 2 4}
{2 2 4 8}
数据范围
30% 的数据,1≤n≤10
60% 的数据,1≤n≤16,1≤ai≤1000
100% 的数据,1≤n≤20,1≤ai≤107