ACM__HK网络赛2016 A题 A + B problem

题目描述

ACM–HK网络赛2016 A题 A+B problem
这个OJ真™难用

给你一堆数,然后求a_i+a_j=a_k的组成的(i,j,k)对有多少个,并且保证i,j,k小标互不相同,且a_i \in [-50000,50000]

解题报告
最近练习FFT敲的一道题,本蒟蒻实在是辣鸡,记num[i]表示值为i的值有多少个,因为有负数,所以给所有数字加上50000就好了,实际上是一个裸的卷积,计算出来需要去重,有一种情况在于0,因为有可能会自己加了0也等于a[i]所以的特殊处理处0有多少个,减了0就可以了,而且记住,这个(i,j)也是有顺序要求的,(i,j)(j,i)2个不同的,所以我们得处理0的时候 \times 2倍.