手机版

ACM常用算法(9)

发布时间:2021-06-06   来源:未知    
字号:

ACM常考算法

if (l!=0) pi[1]=-pi[1]; for (i=2; i<=n-1; i++) {

p=pr[i-1]*pr[1]; q=pi[i-1]*pi[1];

s=(pr[i-1]+pi[i-1])*(pr[1]+pi[1]); pr[i]=p-q; pi[i]=s-p-q; }

for (it=0; it<=n-2; it=it+2) {

vr=fr[it]; vi=fi[it];

fr[it]=vr+fr[it+1]; fi[it]=vi+fi[it+1];

fr[it+1]=vr-fr[it+1]; fi[it+1]=vi-fi[it+1]; }

m=n/2; nv=2;

for (l0=k-2; l0>=0; l0--) {

m=m/2; nv=2*nv;

for (it=0; it<=(m-1)*nv; it=it+nv) for (j=0; j<=(nv/2)-1; j++) {

p=pr[m*j]*fr[it+j+nv/2]; q=pi[m*j]*fi[it+j+nv/2]; s=pr[m*j]+pi[m*j];

s=s*(fr[it+j+nv/2]+fi[it+j+nv/2]); poddr=p-q; poddi=s-p-q;

fr[it+j+nv/2]=fr[it+j]-poddr; fi[it+j+nv/2]=fi[it+j]-poddi; fr[it+j]=fr[it+j]+poddr; fi[it+j]=fi[it+j]+poddi; } }

if (l!=0)

for (i=0; i<=n-1; i++) {

fr[i]=fr[i]/(1.0*n); fi[i]=fi[i]/(1.0*n); } if (il!=0)

for (i=0; i<=n-1; i++) {

pr[i]=sqrt(fr[i]*fr[i]+fi[i]*fi[i]); if (fabs(fr[i])<0.000001*fabs(fi[i])) {

if ((fi[i]*fr[i])>0) pi[i]=90.0; else pi[i]=-90.0; } else

pi[i]=atan(fi[i]/fr[i])*360.0/6.283185306; } return; }

10.Ronberg算法计算积分

语法:result=integral(double a,double b);

ACM常用算法(9).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)