杭电ACM2098--分拆素数和
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2098
这是源码。其实我本不想拿出源码,毕竟源码很容易被复制。
我这里刚开始出错的地方有
0_0_12811458_22064.cpp
0_0_12811458_22064.cpp(9) : error C2668: “sqrt” : 对重载函数的调用不明确
\include\math.h(626): 可能是“long double sqrt(long double)”
\include\math.h(578): 或 “float sqrt(float)”
\include\math.h(200): 或 “double sqrt(double)”
试图匹配参数列表“(int)”时
0_0_12811458_22064.cpp(12) : error C2668: “sqrt” : 对重载函数的调用不明确
\include\math.h(626): 可能是“long double sqrt(long double)”
\include\math.h(578): 或 “float sqrt(float)”
\include\math.h(200): 或 “double sqrt(double)”
试图匹配参数列表“(int)”时
我并不是太明白这是为什么。然后度娘给我答案,说int i,n; i<=int(sqrt(float(n)));如果是直接sqrt的话,n和i都是int型,而sqrt结果却是double型的,系统自身没有强制转化的功能。
if(Is_Prime(i)&&Is_Prime(n-i)){
cont++;
if(i==n-i) cont--;
}
需要判断重合的那个数,我一直没想到。
<span style="font-size:18px;">#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include <iostream>
using namespace std;
int Is_Prime(int n)
{
int r,i;
if(n<=1)
return 0;
for(i=2;i<=int(sqrt(float(n)));i++)
if(n%i==0)
break;
if(i>int(sqrt(float(n))))
return n;
else
return 0;
} int main()
{
int n,cont;
while(cin>>n&&n){
cont=0;
for(int i=2;i<=n/2;i++){
if(Is_Prime(i)&&Is_Prime(n-i)){
cont++;
if(i==n-i) cont--;
}
}
cout<<cont<<endl;
}
return 0;
} /*
int main()
{
int i,j,k,n;
int m;
int a[1500];
while (scanf("%d",&m)!=EOF&&m!=0)
{
j = 0;
for (i=0;i<m;i++)
if (abc(i))
{
a[j] = i;
j++;
}
k = 0;
for (i=0;i<=j/2;i++)
for (n=0;n<j;n++)
if (a[i]+a[n]==m)
k++;
printf("%d\n",k);
}
return 0;
} */</span>
杭电ACM2098--分拆素数和的更多相关文章
- 杭电-------2098 分拆素数和(c语言写)
#include<stdio.h> #include<math.h> ] = { , }; ;//全局变量,用来标志此时已有多少个素数 int judge(int n) {// ...
- 杭电oj 2098——分拆素数和(包含如何判断质数及优化),java实现
question:分拆素数和 思路: 1.首先从1一直遍历到数据的1/2位置(因为后面的会和前面的重复),因为是要两个数,所以另一个数就是原数据减去遍历的数字(即i 和data-i),如果二者同时为质 ...
- 分拆素数和[HDU2098]
分拆素数和 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- HDU 2098 分拆素数和
HDU 2098 分拆素数和 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768K (Java/Others) [题目描述 ...
- hdoj 2098 分拆素数和
分拆素数和 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- HDU 2098 分拆素数和(素数)
HDU 2098 分拆素数和(素数) http://acm.hdu.edu.cn/showproblem.php?pid=2098 题意: 给你一个偶数,问你这个偶数有多少种方式能由两个不同的素数构成 ...
- hdu 2098 分拆素数和(素数)
分拆素数和 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- 哥德巴赫猜想-nefu2 & 分拆素数和 hdu2098
哥德巴赫猜想-nefu2 & 分拆素数和 hdu2098 //哥德巴赫猜想 #include <iostream> #include <cmath> #include ...
- hdu 2098 分拆素数和(一个偶数拆分成两个不同素数和 拆法数量)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2098 分拆素数和 Time Limit: 1000/1000 MS (Java/Others) ...
- hdu2098分拆素数和(素数+暴力)
分拆素数和 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
随机推荐
- FreeMarker中文API手冊(完整)
FreeMarker概述 FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写 FreeMarker被设计用来生成HTML Web页面,特别是基于MVC模式的应用 ...
- 分布式存储系统sheepdog
Sheepdog,是由NTT的3名日本研究员开发的开源项目,主要用来为虚拟机提供块设备. 其架构例如以下: 以下,我们将从架构.模块等几个方面来介绍下: 一.架构图 如上图: 採用无中心节点的全对称架 ...
- 云服务器 ECS Linux 误删除文件恢复方法介绍
云服务器 ECS Linux 下,rm -rf 意味着一旦删除的文件是无法挽回的.但如果在没有文件覆盖操作的前提下,可以先尝试相关方式进行文件恢复. 本文对此进行简要说明. https://help ...
- ext2磁盘布局
概述 本篇博客主要关注ext2文件系统的磁盘布局,即ext2会在格式化时将磁盘划分成什么样子. ext2磁盘布局 任何Ext2分区中的第一个块从不受Ext2文件系统的管理, ...
- 高性能HTTP加速器Varnish安装与配置
导读 Varnish是一款高性能且开源的反向代理服务器和HTTP加速器,它采用了全新的软件体系结构,和现在的硬件体系配合紧密.下面就由我给大家简单说说他的安装与配置. 安装 安装pcre 如果没有安装 ...
- MR 的 mapper 数量问题
看到群里面一篇文章涨了贱识 http://www.cnblogs.com/xuxm2007/archive/2011/09/01/2162011.html 之前关注过 reduceer 的数量问题,还 ...
- BootStrap2学习日记19---缩略图
缩略图 代码: <ul class="thumbnails"> <li class="span3"><a href="# ...
- Jquery 扩展方法
$.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效. 如扩展$.fn.abc() 那么你可以这样子:$("#div").abc(); 通常使 ...
- PathAnimation
使用Blend制作PathAnimation 1:选中Path转换为运动路径 2:选择目标对象 PathAnimation使用动态的Path PathAnimation动画在播放的时候,PahtGeo ...
- 【原创】一些常用的Vi命令,可帮助脱离鼠标
使用Vi编写代码时,如果想脱离鼠标,需要使用一些命令快捷键,下面罗列了一些常用的并且容易记住的: 1. 命令模式下,移动光标或跳转 0到行首 ^到行首第一个非空字符 $到行尾非空字符 fx向后移动光标 ...