继续一周一次的课堂笔记 :D 昨天去晚了站着听讲,感觉好好啊,注意各种集中。想想整个教室里面就是我和老师是站着的,自豪感油然而生。
第二次课讲的东西依旧比较简单,是这本书第二章的前半部分。作为一个好久之前已经预习过的孩子,我表示万分的得意(最小二乘法难道不是三四年前就学过的?话说以后我再面人的时候,就让他推导最小二乘估计量,嘻嘻...考验一下基本功)。
------------原谅我的...
分类:
其他好文 时间:
2014-06-30 10:00:55
阅读次数:
185
题目:
要从5个人中选取2个人作为礼仪,其中每个人的身高范围为160-190,要求2个人的身高差值最小(如果差值相同的话,选取其中最高的两人),以升序输出两个人的身高。
Smple input:161 189 167 172 188 Sample outPut: 188 189
分析:我的理解就是先逆序排好数值, 然后逐对比较身高差值, 找出身高差值最小的然后输出
代码如下...
分类:
其他好文 时间:
2014-06-30 09:37:19
阅读次数:
258
题目链接:http://poj.org/problem?id=2299
题目大意:求出排序过程中的最小交换次数
利用归并排序的分治算法解决此题。
代码:
#include
#include
#include
#define N 500001
using namespace std;
int a[N];
int temp[N];
long long ans;
void merge(in...
分类:
其他好文 时间:
2014-06-30 08:18:11
阅读次数:
230
搭建一个最小代价的网络,最原始的最小生成树的应用。
这里使用Union find和Kruskal算法求解.
注意:
1 给出的数据是原始的矩阵图,但是需要转化为边表示的图,方便运用Kruskal,因为需要sort
2 减少边,一个矩阵最多需要(N*N-N)>>1条边,有人讨论本题是否有向,那是无意义的,因为本题的最小生成树和方向无关。
3 使用Union find是为了判断是否有环,比原...
分类:
Web程序 时间:
2014-06-30 08:10:08
阅读次数:
200
首先求出通项 X=x+b/d*t Y=y-a/d*t (x,y为ax+by=gcd(a,b)的解,d=gcd(a,b))可知我们要求的最小的解是 abs(x+b/d*t)
+ abs(y-a/d*t)
设a>b不是的话,就交换a,b,我们发现上述关于t的方程是 |x+k1*t| + |y-k2*t|,由于a>b所以k2>k1,所以方程一开始右边减小的比左边增加的快
所以当y=k2*t的时候...
分类:
其他好文 时间:
2014-06-30 07:49:37
阅读次数:
244
题目来源:HDU 3360 National Treasures
题意:如果a[i][j] != -1 把他转成二进制 最多有12位 代表题目那张图的12个位置 如果对应位是1 说明在那里放一个守卫可以看住a[i][j]位置上的这个东西
思路:明显死最小点覆盖 奇偶匹配建图
#include
#include
#include
using namespace std;
const i...
分类:
其他好文 时间:
2014-06-30 07:43:25
阅读次数:
194
UVA 11916 - Emoogle Grid
题目链接
题意:一个N列的网格,有B个格子可以不涂色,其他格子各涂一种颜色,现在一共有k种颜色,要求同一列格子颜色不能相同,问总方案数 MOD 100000007答案等于R时最小的M是多少。
思路:先把格子分为两部分,有不涂色的一部分,没有的一部分,然后计算出有的情况数,之后如果每多一行,每个格子上能涂颜色必然是k - 1种,也就...
分类:
其他好文 时间:
2014-06-30 00:28:08
阅读次数:
255
本题也是使用Prime和Kruskal都可以的最小生成树的题解。
本题一点新意就是:需要除去最大的S-1个距离,因为可以使用卫星覆盖这些距离。
技巧:建图建有向图,速度快点,不用计算两边。
这里使用Prime,因为是稠密图。
#include
#include
#include
#include
#include
#include
using std::sort;
c...
分类:
Web程序 时间:
2014-06-30 00:16:45
阅读次数:
292
对每个圆二分半径寻找可行的最小半径,然后取最小的一个半径。
对于两圆相交就只要求到两个扇形,然后减去两个全等三角形就行了。
#include
#include
#include
#include
using namespace std;
#define pi acos(-1.0)
#define eps 1e-8
#define maxn 50
int n;
struct point{...
分类:
其他好文 时间:
2014-06-29 22:36:16
阅读次数:
247
1. 二叉查找树的定义:
左子树不为空的时候,左子树的结点值小于根节点,右子树不为空时,右子树的结点值大于根节点,左右子树分别为二叉查找树
2. 二叉查找树的最左边的结点即为最小值,要查找最小值,只需遍历左子树的结点直到为空为止,同理,最右边的结点结尾最大值,要查找最大值,只需遍历右子树的结点直到为空为止。二叉查找树的插入查找和删除都是通过递归的方式来实现的,删除一个结点的时候,先找到这个结点...
分类:
编程语言 时间:
2014-06-29 22:08:33
阅读次数:
316