BZOJ 3527 [Zjoi2014] 力
来源:互联网 发布:java replace的原理 编辑:程序博客网 时间:2024/06/06 13:22
Description
给出n个数qi,给出Fj的定义如下:
令Ei=Fi/qi,求Ei.
Input
第一行一个整数n。
接下来n行每行输入一个数,第i行表示qi。
n≤100000,0<qi<1000000000
Output
n行,第i行输出Ei。与标准答案误差不超过1e-2即可。
Sample Input
5
4006373.885184
15375036.435759
1717456.469144
8514941.004912
1410681.345880
4006373.885184
15375036.435759
1717456.469144
8514941.004912
1410681.345880
Sample Output
-16838672.693
3439.793
7509018.566
4595686.886
10903040.872
3439.793
7509018.566
4595686.886
10903040.872
HINT
Source
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~FFT~
变量名要有区分度!!!
#include<cstdio>#include<complex>#include<cmath>using namespace std;#define E complex<double>#define pi acos(-1)#define N 262144int n,m,l,r[N];double x;E a[N],b[N],g[N],f1[N],f2[N];void fft(E *u,int v){for(int i=0;i<n;i++) if(i>r[i]) swap(u[i],u[r[i]]);for(int i=1;i<n;i<<=1){E wn(cos(pi/i),v*sin(pi/i));for(int j=0;j<n;j+=(i<<1)){E w(1,0);for(int k=0;k<i;k++,w*=wn){E x=u[j+k],y=u[i+j+k]*w;u[j+k]=x+y;u[i+j+k]=x-y;}}}if(v==-1) for(int i=0;i<n;i++) u[i]/=n;}int main(){scanf("%d",&n);n--;m=n*2;for(int i=0;i<=n;i++) scanf("%lf",&x),a[i]=b[n-i]=x;for(int i=1;i<=n;i++) g[i]=(1.0/i/i);for(n=1;n<=m;n<<=1) l++;for(int i=0;i<n;i++) r[i]=(r[i>>1]>>1)|((i&1)<<(l-1));fft(a,1);fft(b,1);fft(g,1);for(int i=0;i<n;i++) f1[i]=g[i]*a[i];for(int i=0;i<n;i++) f2[i]=g[i]*b[i];fft(f1,-1);fft(f2,-1);n=m/2;for(int i=0;i<=n;i++) printf("%.3lf\n",f1[i].real()-f2[n-i].real());return 0;}
1 0
- BZOJ 3527: [Zjoi2014]力
- 【BZOJ 3527】 [Zjoi2014]力
- BZOJ 3527 [Zjoi2014] 力
- 【BZOJ 3527】 [Zjoi2014]力
- bzoj 3527 [Zjoi2014]力
- BZOJ 3527 [Zjoi2014]力
- BZOJ 3527 [Zjoi2014]力 FFT
- 【BZOJ 3527】 [Zjoi2014]力|FFT
- BZOJ 3527 [Zjoi2014] 力 FFT
- BZOJ 3527[Zjoi2014]力 FFT
- BZOJ 3527 ZJOI2014 力 快速傅里叶变换
- bzoj 3527: [Zjoi2014]力 (FFT)
- bzoj 3527: [Zjoi2014]力 快速傅里叶变换
- 洛谷 P3338 [ZJOI2014]力(bzoj P3527 [ZJOI2014]力)
- 3527: [Zjoi2014]力 FFT
- 3527: [Zjoi2014]力
- 【BZOJ】【P3527】【ZJOI2014】【力】【题解】【FFT】
- 【ZJOI2014】力
- libevent源码深度剖析十二
- JAVA http请求接口数据
- Ubuntu14.04安装Bugzilla
- Android 6.0以上因REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
- iOS 更加优雅便捷的UIAlertView/UIAlertController封装使用
- BZOJ 3527 [Zjoi2014] 力
- 过程设计的工具
- Source insight添加工具自动排版 20170307
- 模板类问题
- linux下编译opencv
- Hbase复制(Replication )
- Phoenix通过MapReduce对HBase批量导入数据
- 玲珑杯”ACM比赛 Round #11【待补】
- bzoj 2752 线段树