#include <algorithm>
#include <iostream>
#include <vector>
#include <unordered_set>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> vec;
int num1 = 0, num2 = 0, al = 0;
while (n--) {
int num;
cin >> num;
if (num % 5 == 0) {
num1 += num;
} else if (num % 3 == 0) {
num2 += num;
} else {
vec.emplace_back(num);
al += num;
}
}
unordered_set<int> s1, s2;
s1.insert(0); //枚举所有组合的不重复和,0为空数组
for (int i = 0; i < vec.size(); i++) { //遍历每一个数字
s2 = s1; //每个数字都要与当前集合的每个数相加组成新的和
for (auto it : s2)
s1.insert(it + vec[i]);
}
bool flag = false;
for (auto it : s1) { //遍历枚举的集合
if (it + num1 == num2 + al - it) { //分成两部分后相等
flag = true;
break;
}
}
cout << (flag ? "true" : "false") << endl;
return 0;
}
// 64 位输出请用 printf("%lld")