博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[HNOI2017]礼物
阅读量:6265 次
发布时间:2019-06-22

本文共 903 字,大约阅读时间需要 3 分钟。

因为可以加上一个常数C,说是非负整数,但其实A手环加上,就等于B手环减去,于是把m范围扩充到[-100,100]即可。

然后所求变为:

$$\sum (x_i-y_i+C)$$

接着拆开,可以得到:

$$\sum(x_i^2+y_i^2+C^2)+2*C*\sum(x_i-y_i)+2*\sum(x_i*y_i)$$

然后发现这些有常量,可变的C所对应的x和y是常数,而与顺序有关的xi*yi又是与C无关的。所以我们可以先求出的最大值xi*yi。如果我们将B手环在输入之后反转一下,可以发现当翻转前A与B发生错位之时,每一个错位都可以对应反转之后的B与A的FFT的乘积的各个项的系数。

 然后再枚举C从[-m,m]那么答案就出来了。

不会FFT的就去学吧。

1 #include
2 #include
3 #include
4 #include
5 #include
6 #define C complex
7 #define pf(a) ((a)*(a)) 8 using namespace std; 9 const int MAXN=1000000,INF=0x3f3f3f3f;10 const double pi=acos(-1.0);11 int n,m,L,G,Max,Val,ans=INF,sum1,sum2;12 int R[MAXN],V[MAXN];13 C A[MAXN],B[MAXN];14 inline int gi(){ int res; scanf("%d",&res); return res;}15 void FFT(C *a,int p)16 {17 for(int i=0;i
>1]>>1)|((i&1)<

转载于:https://www.cnblogs.com/D-O-Time/p/7954847.html

你可能感兴趣的文章
ConnectString中enlist设置的含义
查看>>
潜移默化学会WPF(企业经验篇)--Log4Net(二)
查看>>
轻量级面向SQL的MySQL开源监控工具
查看>>
ubuntu 卸载 程序软件
查看>>
iOS 6,5支持 portrait,landscape (横竖屏的处理)
查看>>
FineUI v3.2.2发布了!(7 天后再出新版,给不给力?)
查看>>
Quartz在Spring中动态设置cronExpression (spring设置动态定时任务)------转帖
查看>>
vb webbrower 相对坐标
查看>>
原始的js代码和jquery对比
查看>>
.net和java和谐相处之安卓客户端+.net asp.net mvc webapi 2
查看>>
Dynamic CRM 2013学习笔记(十六)用JS控制Tab可见,可用
查看>>
jquery对象和javascript对象相互转换
查看>>
laravel开启调试模式
查看>>
Spring aop的实现原理
查看>>
ADO.NET一小记-select top 参数问题
查看>>
(转)jquery easyui treegrid使用小结 (主要讲的是如何编辑easyui中的行信息包括添加 下拉列表等)...
查看>>
iOS使用宏写单例
查看>>
Isotig & cDNA & gene structure & alternative splicing & gene loci & 表达谱
查看>>
3、Cocos2dx 3.0游戏开发找小三之搭建开发环境
查看>>
携程Apollo(阿波罗)配置中心使用Google代码风格文件(在Eclipse使用Google代码风格)(配合阿里巴巴代码规约快速设置)...
查看>>