#include <stdio.h>
#include <stdlib.h>
#include<math.h>
int isPri(int a, int b)
{
int i;
for(i=; i <= sqrt(a); i++)
{
if(a%i == )
return ;
}
for(i=; i <= sqrt(b); i++)
{
if(b%i == )
return ;
}
return ;
}
int main()
{
int n,flag,i,cout;
while(scanf("%d",&n) != EOF && n)
{
cout=;
for(i=; i< n/+; i++)
{
flag=isPri(i,n-i);
if(flag == )
cout++;
}
printf("%d\n",cout);
}
return ;
}

for循环用于产生数对,用i<n/2+1或i<=n/2都可以避免产生重复的数对

在判断素数的时候采用小学生做法:从2到sqrt(n),i=2,i<=n(必须加=)

如果是2和3,根本不会经过循环

以后都用《埃拉托斯特尼筛法》打表

算法描述:小于2的不是素数,用一个数组a[10000],元素下标表示这个数,元素的值表示是否是素数,c++做法是,bool a[10000],将a[0]和a[1]赋成0,从2开始,2*2,2*3...

2*6...这些下标对应的元素值全改0,在此环境下再次寻找下一个素数,再一次,3*2,3*3,3*4...乘积整体小于10000

ar[]
ar[]=;
ar[]=;
for(i=;i<;i++)
{
ar[i]=;
}
for(i=;i<;i++)
{
if(ar[i] == )
{
for(j=;i*j<;j++)
{
ar[i*j] = ;
}
}
}

下面的动态图很清楚:

http://blog.csdn.net/kingwolfofsky/article/details/7199758

poj2909 || poj2262的更多相关文章

  1. poj2262 Goldbach's Conjecture

    poj2262 Goldbach's Conjecture 用欧拉筛把素数筛出来,再枚举一下. #include<iostream> #include<cstdio> #inc ...

  2. [POJ2262] Goldbach’s Conjecture

    Goldbach's Conjecture Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 48161   Accepted: ...

  3. POJ2262问题描述

    Goldbach's Conjecture   Description In 1742, Christian Goldbach, a German amateur mathematician, sen ...

  4. poj2262

                                                                                                   Goldb ...

  5. 筛法求质——poj2262&2909

    这两道题都是哥赫巴德猜想的内容.基本的技术点都是在一个很大的数字范围里面求质数.直接判断两个数是不是质数,这种方法虽然可行但是还是很慢的.所以这两题我们使用打表! 而建立质数表的方法就是筛法求质,速度 ...

  6. [暑假集训--数论]poj2262 Goldbach's Conjecture

    In 1742, Christian Goldbach, a German amateur mathematician, sent a letter to Leonhard Euler in whic ...

  7. [暑假集训--数论]poj2909 Goldbach's Conjecture

    For any even number n greater than or equal to 4, there exists at least one pair of prime numbers p1 ...

  8. poj2262 Goldbach's Conjecture——筛素数

    题目:http://poj.org/problem?id=2262 水水更健康~ 代码如下: #include<iostream> #include<cstdio> #incl ...

  9. poj2909 欧拉素数筛选

    刚刚学了一种新的素数筛选法,效率比原先的要高一些,据说当n趋近于无穷大时这个的时间复杂度趋近O(n).本人水平有限,无法证明. 这是道水题,贴代码出来重点是欧拉筛选法.我把原来普通的筛选法贴出来. / ...

随机推荐

  1. pyinstaller打出的EXE包执行时报错“failed to excute ”信息

    我的程序是selenium自动化脚本,打包时执行的是 Python pyinstaller -F --onefile -w  XXX.py 这样打出的包执行后提示“failed to excute s ...

  2. DTS结构及其编译方法

    一.主要问题1,需要了解dtsi与dts的关系2,dts的结构模型3,dts是如何被编译的,以及编译后会生成一个什么文件. 二.参考文字1,DTS(device tree source).dts文件是 ...

  3. HeadFirst设计模式读书笔记(2)-观察者模式(Observer Pattern)

    观察者模式:定义了对象之间一对多的依赖关系,这样一来,当一个对象的状态发生改变时,它的依赖者将会受到通知并且自动更新. 有一个模式可以帮你的对象知悉现况,不会错过该对象感兴趣的事,对象甚至在运行时可以 ...

  4. MEMS微加工技术

    MEMS的微加工有两种方法,一种是多层平面加工技术,还有一种是基于SOI的体加工技术. (一)多层平面加工技术 这种方法加工出来的结构有三层:作为主体的多晶硅层.作为暂时填充物的氧化物牺牲层以及多晶硅 ...

  5. Android开发之ExpandableListView扩展(BaseExpandableListAdapter的使用)(完整版)

    Android开发之ExpandableListView扩展(BaseExpandableListAdapter的使用)(完整版)

  6. pack布局

    Chapter 2. Geometry Management 第2章 布局管理: 显示部件在屏幕上,他们必须被传递给布局管理器. 布局管理器 控制部件的位置和大小 在显示窗口,几个布局管理器是可用的在 ...

  7. openstack 使用cloud init 和 console-log, nbd或者libguestfs 获取VM中的硬件信息。

    以获取PCI的信息为例. 基本代码: pci.py import base64 import guestfs from functools import partial import os impor ...

  8. Linux系统中“动态库”和“静态库”那点事儿

    摘自http://blog.chinaunix.net/uid-23069658-id-3142046.html 今天我们主要来说说Linux系统下基于动态库(.so)和静态(.a)的程序那些猫腻.在 ...

  9. Error: Linux下 mysql.sock文件丢失被删除解决方法

    在默认情况下,Mysql安装以后会在/tmp目录下生成一个mysql.sock文件,如该文件丢失则Mysql将不能够正常启动,解决方法:使用mysqld_safe 启动即可解决: #basedir:m ...

  10. JS页面赋值

    <html>  <title>页面1</title> <div> <ul>  <li> <div class=" ...