当前位置: 首页 > news >正文

威海城乡建设局网站/长春网站制作设计

威海城乡建设局网站,长春网站制作设计,外贸互联网推广的,多少钱要交税传送门 黄学长的代码好清楚啊……大概搞明白半平面交是个什么玩意儿了…… 设抛物线\[yax^2bx\] 则\[y1<ax1^2bx1<y2\] \[ax1^2bx1>y1\] \[bx1>y1-ax1^2\] \[b>y1/x1-ax1\] 然后就可以转化为一个关于\(a,b\)的不等式了……那么就二分答案&#xff0c;用半平面交…

传送门

黄学长的代码好清楚啊……大概搞明白半平面交是个什么玩意儿了……

设抛物线
\[y=ax^2+bx\]


\[y1<=ax1^2+bx1<=y2\]

\[ax1^2+bx1>=y1\]

\[bx1>=y1-ax1^2\]

\[b>=y1/x1-ax1\]
然后就可以转化为一个关于\(a,b\)的不等式了……那么就二分答案,用半平面交判断又没有解就行了

//minamoto
#include<bits/stdc++.h>
#define double long double
#define linf 1e15
#define fp(i,a,b) for(register int i=a,I=b+1;i<I;++i)
#define fd(i,a,b) for(register int i=a,I=b-1;i>I;--i)
using namespace std;
#define getc() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<21,stdin),p1==p2)?EOF:*p1++)
char buf[1<<21],*p1=buf,*p2=buf;
int read(){int res,f=1;char ch;while((ch=getc())>'9'||ch<'0')(ch=='-')&&(f=-1);for(res=ch-'0';(ch=getc())>='0'&&ch<='9';res=res*10+ch-'0');return res*f;
}
const int N=2e5+5;
struct node{double x,y;};int n,m,ans=0;
struct line{node a,b;int id;double slop;}q[N],a[N],l[N];
inline node operator -(node a,node b){return {a.x-b.x,a.y-b.y};}
inline double operator *(node a,node b){return a.x*b.y-a.y*b.x;}
double cal(double a,double b,int x){return b/a-a*x;}
inline bool operator <(line a,line b){return a.slop==b.slop?(a.b-a.a)*(b.a-a.a)<0:a.slop<b.slop;}
node inter(line a,line b){double k1,k2,t;k1=(b.b-a.a)*(a.b-a.a);k2=(a.b-a.a)*(b.a-a.a);t=k2/(k1+k2);return {b.a.x+t*(b.b.x-b.a.x),b.a.y+t*(b.b.y-b.a.y)};
}
inline bool jd(line a,line b,line c){node p=inter(a,b);return (p-c.a)*(c.b-c.a)>0;}
bool check(int x){int tot=0;fp(i,1,m)if(l[i].id<=x&&l[i].slop!=a[tot].slop)a[++tot]=l[i];int h=1,t=0;q[++t]=a[1],q[++t]=a[2];fp(i,3,tot){while(h<t&&jd(q[t-1],q[t],a[i]))--t;while(h<t&&jd(q[h+1],q[h],a[i]))++h;q[++t]=a[i];}while(h<t&&jd(q[t-1],q[t],q[h]))--t;while(h<t&&jd(q[h+1],q[h],q[t]))++h;return t>=h+2;
}
int main(){
//  freopen("testdata.in","r",stdin);l[++m].a={-linf,-linf};l[m].b={linf,-linf};l[++m].a={linf,-linf};l[m].b={linf,linf};l[++m].a={linf,linf};l[m].b={-linf,linf};l[++m].a={-linf,linf};l[m].b={-linf,-linf};n=read();fp(i,1,n){double x=read(),ya=read(),yb=read();l[++m].a.x=-1,l[m].a.y=cal(x,ya,-1);l[m].b.x=1,l[m].b.y=cal(x,ya,1);l[++m].a.x=1,l[m].a.y=cal(x,yb,1);l[m].b.x=-1,l[m].b.y=cal(x,yb,-1);l[m].id=l[m-1].id=i;}fp(i,1,m)l[i].slop=atan2(l[i].b.y-l[i].a.y,l[i].b.x-l[i].a.x);sort(l+1,l+1+m);int l=1,r=n,mid;while(l<=r){mid=(l+r)>>1;check(mid)?(ans=mid,l=mid+1):(r=mid-1);}printf("%d\n",ans);return 0;
}

转载于:https://www.cnblogs.com/bztMinamoto/p/10026970.html

http://www.jmfq.cn/news/4910185.html

相关文章:

  • 哪个购物网站最便宜/百度联系方式
  • wordpress主题阿里百/优化合作平台
  • 建站技术/游戏推广是什么工作
  • 乡镇网站建设/南京企业网站排名优化
  • 响应式网站是指自适应吗/免费网站怎么做出来的
  • 我有域名跟空间能教我做网站吗/百度直播平台
  • 网站建设顾问/公司网络营销实施计划
  • 做推文封面的网站/第一推广网
  • 免费b站推广网站入口2020/自动seo优化
  • 南通网站建设公司/百度指数行业排行
  • 易尔通做网站怎么样/抖音搜索seo代理
  • 邢台装修网站建设/站长之家域名查询排行
  • 桂林网站优化公司/可以看任何网站的浏览器
  • 监控直播网站开发/免费推广的方式
  • 免费永久网站建设/百度搜索广告价格
  • 做旅游景点网站的目的和意义/seo平台优化
  • 做搜狗pc网站优/什么是搜索引擎销售
  • sql做网站/关键词seo优化软件
  • asp.net mvc 做网站/外贸推广平台排名
  • 网站建设开发文档/上海快速排名优化
  • 做界面的网站/廊坊seo快速排名
  • 注册域名成功后怎样建设网站/百度引擎搜索入口
  • 做网站怎么插入表格/seo课
  • 做商城类网站备案时需提供什么证件/网站是怎么建立起来的
  • 阳狮做网站/老师直播课
  • 郑州网站微信微博维护/宁波seo推广推荐公司
  • 网站做聚合是啥意思/扬州百度推广公司
  • html做网站怎么链接音乐/搜索引擎营销特点
  • 北京3d效果图制作公司/seo快速排名是什么
  • 浙江网站怎么做推广/深圳最新消息今天