本文整理汇总了C++中poly::resize方法的典型用法代码示例。如果您正苦于以下问题:C++ poly::resize方法的具体用法?C++ poly::resize怎么用?C++ poly::resize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类poly
的用法示例。
在下文中一共展示了poly::resize方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: convex_hull
void convex_hull(poly &v,poly &p)
{
p.clear() ;
sort(v.begin(),v.end()) ;
v.resize(unique(v.begin(),v.end())-v.begin()) ;
int n=v.size() ;
int sz=0 ;
for(int i=0;i<n;i++)
{
while(sz>=2 && dcmp(cross(st[sz-2],st[sz-1],v[i]))<0)
sz-- ;
st[sz++]=v[i] ;
}
for(int i=0;i<sz;i++) p.push_back(st[i]) ;
sz=0 ;
for(int i=0;i<n;i++)
{
while(sz>=2 && dcmp(cross(st[sz-2],st[sz-1],v[i])>0))
sz-- ;
st[sz++]=v[i] ;
}
for(int i=sz-1;i>=0;i--)
{
if(i==sz-1 && st[i]==p.back()) continue ;
if(i==0 && st[i]==p[0]) continue ;
p.push_back(st[i]) ;
}
}