方法一:增量构造法 理解递归必须得理解函数到底是做什么的。 方法二:位向量法 枚举每一位选或者不选,复杂度比方法一略高但更好理解,因为与输出全排列思路差不多,满n位就输出。 缺点是输出不是按照字典序。 方法三:二进制法 稍加思考就会发现,方法二其实与二进制是对应的。 这个方法优点就是代码简单。 注意 ...
分类:
编程语言 时间:
2016-07-30 14:53:34
阅读次数:
519
这次写这个旋转向量法,完全就是套公式x'=xsina-ysina;y'=xsina+ycosa;但是我还是做得很磕磕碰碰,每次输出,把需要的数据输入要结构体或者数组里面都是件难事,让我葛优瘫一下,但是,这次主要还是数学题目所以好理解也好做,不过要注意输出的条件,当y不等输出y小的,否则输出x小的。当 ...
分类:
其他好文 时间:
2016-07-21 17:43:36
阅读次数:
117
#include
#include
#include
using namespace std;
int ans[6],n;
void dfs(int cnt)
{
int i,j;
if(cnt==n) {
for(i=0;i<n;i++) if(ans[i]) cout<<i<<" ";
cout<<endl;
return ;
}
ans[cnt]=1;
dfs(cnt...
分类:
其他好文 时间:
2015-08-20 13:05:49
阅读次数:
149
/*子集生成位向量法*/
#include
int B[20];
void print_subset(int n,int *B,int cur)
{
if(cur == n) {
for(int i=0;i<cur;i++) if(B[i]) printf("%d ",i);
printf("\n");
return ;
}
...
分类:
其他好文 时间:
2015-07-30 09:32:16
阅读次数:
178
1001 Four Inages Strategy题意:给定空间的四个点,判断这四个点是否能形成正方形思路:判断空间上4个点是否形成一个正方形方法有很多,这里给出一种方法,在p2,p3,p4中枚举两个点作为p1的邻点,不妨设为pi,pj,然后判断p1pi与p1pj是否相等、互相垂直,然后由向量法,最...
分类:
其他好文 时间:
2015-04-19 10:04:08
阅读次数:
146
题目大意:判断空间上4个点是否形成一个正方形分析:标称思想 :在p2,p3,p4中枚举两个点作为p1的邻点,不妨设为pi,pj,然后判断p1pi与p1pj是否相等、互相垂直,然后由向量法,最后一个点坐标应该为pi+pj?p1,判断是否相等就好了。我的思想 : 枚举了各种情况,4条边相等+有一个角是直...
分类:
其他好文 时间:
2015-04-18 23:34:39
阅读次数:
175
二维坐标:a=λb则a∥b向量法a(x1,y1) b(x2,y2)若x1y2=y1x2则a∥b若a*b=x1x2+y1y2=0则a⊥b三维坐标:向量法a(x1,y1,z1) b(x2,y2,z2)x1/x2=y1/y2=z1/z2=k则a∥b若a*b=x1x2+y1y2+z1z2=0则a⊥b
分类:
其他好文 时间:
2015-04-18 23:27:23
阅读次数:
1023
给你一个可比较大小顺序的集合,让你生成所有按照字典序排列的子集,本文借鉴自刘汝佳算法入门经典。
方法一:
增量构造法:一次选取一个元素到集合中。
#include
using namespace std;
int a[20];
/*递归输出n以内所有的子集,其中cur为当前下标,初始值0*/
void print_subset(int n,int* a,int cur){
for (in...
分类:
其他好文 时间:
2014-10-15 22:04:01
阅读次数:
262
描述
给你三个点,表示一个三角形的三个顶点,现你的任务是求出该三角形的面积
输入每行是一组测试数据,有6个整数x1,y1,x2,y2,x3,y3分别表示三个点的横纵坐标。(坐标值都在0到10000之间)
输入0 0 0 0 0 0表示输入结束
测试数据不超过10000组输出
输出这三个点所代表的三角形的面积,结果精确到小数点后1位(即使是整数也要输出一位小数位)
分...
分类:
其他好文 时间:
2014-10-07 00:29:51
阅读次数:
184