http://poj.org/problem?id=2909
题意:把n拆分成a+b(都为素数)
解析:2^15不大。。。直接求;
// File Name: poj2909.cpp
// Author: bo_jwolf
// Created Time: 2013年10月11日 星期五 18:50:50
#include<vector>
#include<list>
#include<map>
#include<set>
#include<deque>
#include<stack>
#include<bitset>
#include<algorithm>
#include<functional>
#include<numeric>
#include<utility>
#include<sstream>
#include<iostream>
#include<iomanip>
#include<cstdio>
#include<cmath>
#include<cstdlib>
#include<cstring>
#include<ctime>
using namespace std;
const int maxn = 100005;
int prime[ maxn + 1 ];
int unprime[ maxn ];
void Union(){
memset( unprime, 0, sizeof( unprime ) );
unprime[ 0 ] = unprime[ 1 ] = 1;
for( int i = 2; i < maxn; ++i ){
if( !unprime[ i ] ){
for( int j = i + i; j < maxn; j += i ){
unprime[ j ] = 1;
}
}
}
}
int main(){
int n;
Union();
while( cin >> n ){
if( !n )
break;
int ans = 0;
for( int i = 2; i <= n / 2; ++i ){
if( !unprime[ i ] && !unprime[ n - i ] )
ans++;
}
cout << ans << endl;
}
return 0;
}