数据很小,适合打表
//execution time : 0.157 s
#include <iostream>
#include <cstdio>
#include <cstring>
#include <queue>
#include <stack>
#include <map>
#include <cmath>
#include <algorithm>
#define inf 0x3f3f3f3f
#define SI(a) scanf("%d",&a)
#define set0(a) memset(a,0,sizeof(a))
#define setMo(a) memset(a,-1,sizeof(a))
typedef long long ll;
const int mod = 998244353;
const int maxn = 30010;
using namespace std;
bool vis[maxn];
bool judge(int num)
{
int up = sqrt(num);
ll sum = 1;
for(int i = 2;i <= up;i++)
if(num%i == 0)
{
if(i*i != num){
sum += i;
sum += num/i;
//cout<<i<<" "<<num/i<<endl;
}
else
sum += i;
}
//cout<<sum<<endl;
if(sum > num)return 1;
return 0;
}
int main()
{
set0(vis);
for(int i = 1;i <= 28123;i++)vis[i] = judge(i);
//cout<<judge(12)<<endl;
ll sum = 0;
for(int i = 1;i <= 28123;i++)
{
bool flag = false;
for(int j = 12;j <= i;j++)
if(vis[j]==1&&vis[i-j]==1){
flag = true;break;}
if(!flag)sum += i;
}
cout<<sum<<endl;
return 0;
}