2019-05-25

谓词--素数运算

  • 第一种(存在数据溢出的情况)
int _isPrime(int n)
{
    for(int i=0;i*i<=n;i++)
    {
         if(n%i==0)
                  return 0;
    } 
    return 1;
}

这种状况总是会出现eerror answer
(出错啊出错啊)
存在数据溢出的问题:当其数据足够大超出了int型的数据范围。(为什么不用long long型的数据呢?)----在下一次的章节

解决数据溢出的素数用法

int _isPrime(int n)
{
if(n<=1)
return 0;
int m=floor(sqrt(n)+0.5);
for(int i=0;i<=m;i++)
{
if(n%i==0)
return 0;
}
return 1;
}

但是这样的算法在很多题目里都会出现Time limexed
。。。。。。。。。。。。。。。。

四舍五入的算法

floor的功能:
它表示的是小于其的最大整数
则:
floor(n+0.5)

将其数组变成0/1的表示方法的用处

比如hdu2016的题目里会出现开门的表示
利用初值的全部处于零的表示形式
再用其的符号进行解决的处理

#include
memset(数组名,几个值,sizeof(数组名));
memcpy(b,  a  ,  sizeof(int)*k)`
表示的含义是把A数组的k个元素复制B
`strchr(s,ch)`  
常量数组

在许多的迁移题目里面
会出现很多的往前移动,往后移动的题目
这种状况可以使用常量数组
!!!注意到的是,需要的数据不算太多。而且数据的量要求严格。

字符和整数

除模
!!!!!!!!!

你可能感兴趣的:(2019-05-25)