2008-9-2 21:38:11 阅读(40) 评论(1)
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <algorithm>
#include <math.h>
using namespace std;
const double zero=1e-6;
const double pi=3.1415926535898;
inline double getjc(const double &a, const double &b, const double &c)
{
return (acos((a*a+b*b-c*c)/2/a/b));
2008-4-14 7:56:43 阅读(67) 评论(0)
2008-4-10 18:50:45 阅读(78) 评论(2)
2008-4-9 20:49:08 阅读(55) 评论(0)
WA n次:
1、忘考虑经过角的情况
2、cmp()里的g[1]写成g[0]了……
3、忘考虑经过角的情况2
分3种情况
1 不相交
枚举凸包的边,看点在这条边的左侧还是右侧(叉积),如果都在左侧,就是全在里面,否则全在外面
2 相交一次,直接把左侧的那部分长度输出,对于只经过角不进入图形内的情况加上判断
3 相交两次,第一次相交左侧长度l1,第二次相交左侧长度l3
ans = abs(l1-l3)
唉……我的思维还是不严密啊……感谢Hzy大牛解决了我的最终问题……
#include <iostream>
#include <algorithm>
2008-4-1 0:17:12 阅读(60) 评论(1)
n次AC
刚开始想的有点问题,后来乱改了一通用理论上O(n^3)实际效果貌似不错的方法AC了……
这题明显有更简单的方法,待重做
P.S.做了太多水题做普通难度的题就能让我做这么久……哎……回家之后得改改了……
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
#include <math.h>
#include <stdio.h>
using namespace std;
const int oo = 1000000000;