点击打开链接 // File Name: hdu3746.cpp// Author: bo_jwolf// Created Time: 2013年05月04日 星期六 19:54:29#include<vector>#include<list>#include<map>#include<set>#include<deque>#include<stack>#include<bitset>#include<algorithm>#include<functional>#include<n Read More
posted @ 2013-05-04 20:20
javawebsoa
Views(172)
Comments(0)
Diggs(0)
贴过来做个模板。C为复数类,newArr和at为内存池。 void FFT(int n, C *x){ C W = C(cos(2 * M_PI / n), sin(2 * M_PI / n)), w = C(1), *u = newArr(n >> 1), *v = newArr(n >> 1); for (int i = 0; i < n >> 1; ++i) u[i] = x[i << 1], v[i] = x[i << 1 | 1]; if (n > 1) FFT(n >> 1, u), FFT(n & Read More
posted @ 2013-05-04 20:18
javawebsoa
Views(318)
Comments(0)
Diggs(0)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1069题意:有n(n<=30)种不同的立方体(每种个数不限), 求能够堆多高. 分析: (1) 对于每一种立方体, 假设长,宽,高互不相等, 则它放置方法有6种不同的情况(长,宽,高全排列).(2)那么,实际上可以看成是6*n种不同的立方体. (3)对这6*n种立方体的长(如果长相等则以宽)小到大排序. (4)这里就等效于有很多的箱子排成了一列, 看怎么才能将它堆得最高, (5)从小的一边开始, 如果后面的箱子上面能放下前面较小的, 就放一个那种小的到那些大箱子上.(6)然后将这一堆看成... Read More
posted @ 2013-05-04 20:16
javawebsoa
Views(218)
Comments(0)
Diggs(0)

浙公网安备 33010602011771号