![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
暴力求解
foreverbright
这个作者很懒,什么都没留下…
展开
-
全排列
求全排列的方法(from刘汝佳)c++的next_permutation可以完美实现此功能#include<cstdio> #include <algorithm> using namespace std; int main() { int n,p[10]; scanf("%d", &n); for(int i=0; i<n ; i++) scanf("...原创 2018-04-10 21:49:13 · 121 阅读 · 0 评论 -
子集模板
建一个模板,用二进制来枚举子集2^n-1;void print_subset(int n, int s) { for(int i=0; i<n ; i++) if(s&(1<<i)) printf("%d ", i); printf("\n"); } //枚举子集 for(int i=0;i<(1<<n);i++) print_s...原创 2018-04-13 17:16:58 · 205 阅读 · 0 评论 -
快排模板
/* * 快速排序 * https://blog.csdn.net/hguisu/article/details/7776068 */ #include <iostream> using namespace std; int partition(int a[], int low, int high); void quickSort(int a[], int low, int h...原创 2018-06-02 23:34:22 · 534 阅读 · 0 评论 -
【51nod】 1185威佐夫博弈+高精度小数处理
此题为威佐夫博弈,表面看其实不难,但是其给出的样例数据确实非常恐怖。对于小数的优化必须做到高精度的优化才可以pass。 做法: 将(sqrt(5)+1)/2 分为3段,分别用数组保存,呐,两个数相乘,小数和整数是可以互相转换的,将其转化为整数,将x与y之差转化为小数,分为三段则再将其拆分,ps:(0.234*8=0.2*8+0.03+8+0.004*8),很明显可以看出程序处理办法。注意,设Z...原创 2018-07-21 21:39:30 · 276 阅读 · 0 评论