^^想你
C++博客
首页
新随笔
新文章
联系
聚合
管理
posts - 2,comments - 1,trackbacks - 0
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(2)
给我留言
查看公开留言
查看私人留言
随笔档案
2009年8月 (2)
文章分类
JAVA(12)
计算几何(4)
模板(15)
数论(6)
文章档案
2011年7月 (1)
2009年11月 (1)
2009年10月 (1)
2009年9月 (6)
2009年8月 (18)
Hnu Acmer
superlong
superlong
搜索
最新评论
1. re: HOJ 11557 Counting heaps
很强大!!
--Darren
阅读排行榜
1. 高斯消元(174)
2. test(165)
评论排行榜
1. test(0)
2. 高斯消元(0)
Hoj 11619 Balance 切割多边形
void
sovle()
{
this
->
turn_back();
polygon a, b;
int
i, j, k;
point tmp;
p[n]
=
p[
0
];
point p1(
0
,
0
), p2(
0
,
0
);
for
( i
=
0
; i
<
n ; i
++
)
{
if
( p[i].y
>=
0
)
a.add( p[i] );
if
( p[i].y
<=
0
)
b.add( p[i] );
if
( sig( p[i].y
*
p[i
+
1
].y )
<
0
)
{
tmp.x
=
p[i].x
+
( p[i].y
/
( p[i].y
-
p[i
+
1
].y ))
*
( p[i
+
1
].x
-
p[i].x );
//
如此可包含 + - 号的问题
tmp.y
=
0
;
a.add( tmp );
b.add( tmp );
}
}
p1
=
a.poly_centroid();
p2
=
b.poly_centroid();
if
( sig( p1.x
-
p2.x )
==
0
)
printf(
"
Balanced.\n
"
);
else
if
( sig ( p1.x
-
p2.x )
<
0
)
printf(
"
CE is aft of CLR by %.2lf units.\n
"
,fabs(p1.x
-
p2.x));
else
printf(
"
CE is forward of CLR by %.2lf units.\n
"
,fabs(p1.x
-
p2.x));
}
int
main()
{
polygon poly;
while
( poly.read()
!=
EOF )
{
poly.sovle();
}
return
0
;
}
posted on 2009-08-28 17:59
Huicpc217
阅读(103)
评论(0)
编辑
收藏
引用
所属分类:
计算几何
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
三维——面旋转
Hoj 11619 Balance 切割多边形
计算几何模板
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理