poj 3968 (bzoj 2642)

  二分+半平面交,每次不用排序,这是几个算几版综合。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<vector>
#include<deque>
using namespace std;
#define MAXN 100000
namespace geometry
{
typedef long double real;
const real pi=3.1415926535897;
const real eps=1e-;
inline real sqr(real x)
{
return x*x;
}
inline int sgn(real x)
{
if (abs(x)<eps)return ;
return x<?-:;
}
class point
{
public:
real x,y;
point(){x=y=;}
point(real x,real y):x(x),y(y){};
void read();
void print();
};
inline void point::read()
{
double xx,yy;
scanf("%lf%lf\n",&xx,&yy);
x=xx;y=yy;
}
inline void point::print()
{
printf("Point:[%.2lf,%.2lf]\n",(double)x,(double)y);
}
inline real dis(point p1,point p2)
{
return sqrt(sqr(p1.x-p2.x)+sqr(p1.y-p2.y));
}
inline bool cmp_point_position(point p1,point p2)
{
if (p1.y!=p2.y)return p1.y<p2.y;
return p1.x<p2.x;
}
class line
{
public:
point ps;
point pt;
line(){}
line(point ps,point pt):ps(ps),pt(pt){}
line(point ps,real dx,real dy);
real len();
real angle();
bool leftside(point pp);
bool rightside(point pp);
void print();
point mid_point();
line mid_vertical();
};
inline real dot(line& l1,line& l2)
{
return (l1.pt.x-l1.ps.x)*(l2.pt.x-l2.ps.x)
+(l1.pt.y-l1.ps.y)*(l2.pt.y-l2.ps.y);
}
inline real det(line l1,line l2)
{
return (l1.pt.x-l1.ps.x)*(l2.pt.y-l2.ps.y) -
(l1.pt.y-l1.ps.y)*(l2.pt.x-l2.ps.x);
} line::line(point ps,real dx,real dy)
{
this->ps=ps;
this->pt.x=ps.x+dx;
this->pt.y=ps.y+dy;
}
inline real line::len()
{
return sqrt(sqr(pt.x-ps.x)+sqr(pt.y-ps.y));
}
inline real line::angle()
{
return atan2(pt.x-ps.x,pt.y-ps.y);
//if (pt.y>=ps.y)
// return -(pt.x-ps.x)/len();
//else
// return (pt.x-ps.x)/len()+10; //if (pt.y>=ps.y)
// return acos((pt.x-ps.x)/len());
//else
// return 2*pi-acos((pt.x-ps.x)/len()); }
inline bool line::leftside(point pp)
{
return sgn(det(line(pp,ps),*this))>;
}
inline bool line::rightside(point pp)
{
return sgn(det(line(pp,ps),*this))<;
}
inline void line::print()
{
printf("Line:[%.2lf,%.2lf] -> [%.2lf,%.2lf]\n",(double)ps.x,(double)ps.y,(double)pt.x,(double)pt.y);
} point line::mid_point()
{
return point((ps.x+pt.x)/,(ps.y+pt.y)/);
}
line line::mid_vertical()
{
return line(mid_point(),pt.y-ps.y,ps.x-pt.x);
}
inline real operator *(line l1,line l2)
{
return det(l1,l2);
}
inline line operator -(point p1,point p2)
{
return line(p2,p1);
}
inline bool parallel(line l1,line l2)
{
//return sgn(l1.angle()-l2.angle())==0;
return sgn(det(l1,l2))==;
}
inline point crossover(line l1,line l2)
{
if (!sgn(det(l1,l2)))throw ;
real s1=det(l1,l2.ps-l1.ps);
real s2=-det(l1,l2.pt-l1.ps);
return point(l2.ps.x+s1/(s1+s2)*(l2.pt.x-l2.ps.x),
l2.ps.y+s1/(s1+s2)*(l2.pt.y-l2.ps.y));
}
inline real area(point p1,point p2,point p3)
{
return det(line(p2,p1),line(p3,p1))/;
}
typedef line halfplane;
inline bool cmp_line_angle(line l1,line l2)
{
return sgn(l2.angle()-l1.angle())<;
}
inline bool cmp_halfplane(halfplane p1,halfplane p2)
{
int res=sgn(p1.angle()-p2.angle());
if (!res)return !p2.rightside(p1.ps);
return res<;
}
halfplane hpi_que[MAXN];
point hpi_pt_que[MAXN];
void halfplane_intersection(vector<halfplane> &vec,vector<point> &res)
{
sort(vec.begin(),vec.end(),cmp_halfplane);
res.clear();
hpi_que[]=vec[];
int head=,tail=;
point pt;
for (register int i=;i<(int)vec.size();i++)
{
if (parallel(vec[i],vec[i-]))continue;
while (head<tail && vec[i].rightside(hpi_pt_que[tail-]))
tail--;
while (head<tail && vec[i].rightside(hpi_pt_que[head]))
head++;
hpi_que[++tail]=vec[i];
if (!sgn(det(hpi_que[tail],hpi_que[tail-])) && hpi_que[tail].rightside(hpi_que[tail-].ps))
{
res.clear();return ;
}
hpi_pt_que[tail-]=crossover(hpi_que[tail],hpi_que[tail-]);
}
while (head<tail && hpi_que[head].rightside(hpi_pt_que[tail-]))
tail--;
while (head<tail && hpi_que[tail].rightside(hpi_pt_que[head]))
head++;
if (head==tail)
return;
for (register int i=head;i<tail;i++)
res.push_back(hpi_pt_que[i]);
if (tail->head)
res.push_back(crossover(hpi_que[head],hpi_que[tail]));
return ;
}
real area(vector<point> &vec)
{
register real ans=;
for (register int i=;i<(int)vec.size();i++)
{
ans+=area(point(,),vec[i],vec[(i+)%vec.size()]);
}
return abs(ans);
}
void convex_hull(vector<point> &vec,vector<point> &res)
{
res.clear();
res.push_back(vec[]);
for (int i=;i<(int)vec.size();i++)
{
while (res.size()> && !(line(res[res.size()-],res[res.size()-])).leftside(vec[i]))
res.pop_back();
res.push_back(vec[i]);
}
int h=(int)vec.size();
for (int i=(int)vec.size()-;i>=;i++)
{
while ((int)res.size()>h && !(line(res[res.size()-],res[res.size()-])).leftside(vec[i]))
res.pop_back();
res.push_back(vec[i]);
}
res.pop_back();
}
class circle
{
public:
point ct;
real r;
circle(){ct=point(,),r=;};
circle(point ct,real r):ct(ct),r(r){};
circle(point p1,point p2,point p3)
{
line l1=line(p1,p2).mid_vertical();
line l2=line(p1,p3).mid_vertical();
ct=crossover(l1,l2);
r=dis(ct,p1);
}
bool inside(point pt);
bool on_border(point pt);
bool outside(point pt);
};
bool circle::inside(point pt)
{
return sgn(r-dis(pt,ct))>;
}
bool circle::on_border(point pt)
{
return sgn(r-dis(pt,ct))==;
}
bool circle::outside(point pt)
{
return sgn(r-dis(pt,ct))<;
}
}
using namespace geometry; int topv=-;
vector<halfplane> vv;
vector<point> ans;
point pl[MAXN];
int main()
{
freopen("input.txt","r",stdin);
int i;
int n;
scanf("%d",&n);
for (i=;i<n;i++)
pl[i].read();
int l=,r=n/,mid;
while (l+<r)
{
mid=(l+r)>>;
vv.clear();
for (i=;i<n;i++)
vv.push_back(line(pl[(i+mid+)%n],pl[i]));
halfplane_intersection(vv,ans);
if (sgn(area(ans)>))
{
l=mid;
}else
{
r=mid;
}
}
printf("%d\n",r);
}

bzoj1336

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<vector>
#include<deque>
using namespace std;
#define MAXN 510000
namespace geometry
{
typedef long double real;
const real pi=3.14159265358979323846264338;
const real eps=1e-;
inline real sqr(real x)
{
return x*x;
}
inline int sgn(real x)
{
if (abs(x)<eps)return ;
return x<?-:;
}
class point
{
public:
real x,y;
point()
{
x=y=;
}
point(real x,real y):x(x),y(y){};
void read()
{
double xx,yy;
scanf("%lf%lf\n",&xx,&yy);
x=xx;y=yy;
}
void print()
{
printf("Point:[%.2lf,%.2lf]\n",(double)x,(double)y);
}
};
real dis(point p1,point p2)
{
return sqrt(sqr(p1.x-p2.x)+sqr(p1.y-p2.y));
}
bool cmp_point_position(point p1,point p2)
{
if (p1.y!=p2.y)return p1.y<p2.y;
return p1.x<p2.x;
}
point mid_point(point p1,point p2)
{
return point((p1.x+p2.x)/,(p1.y+p2.y)/);
}
class line
{
public:
point ps;
point pt;
line(){}
line(point ps,point pt):ps(ps),pt(pt){}
line(point ps,real dx,real dy);
real len();
real angle();
bool leftside(point pp);
void print();
point mid_point();
line mid_vertical();
};
real dot(line l1,line l2)
{
return (l1.pt.x-l1.ps.x)*(l2.pt.x-l2.ps.x)
+(l1.pt.y-l1.ps.y)*(l2.pt.y-l2.ps.y);
}
real det(line l1,line l2)
{
return (l1.pt.x-l1.ps.x)*(l2.pt.y-l2.ps.y) -
(l1.pt.y-l1.ps.y)*(l2.pt.x-l2.ps.x);
}
line::line(point ps,real dx,real dy)
{
this->ps=ps;
this->pt.x=ps.x+dx;
this->pt.y=ps.y+dy;
}
real line::len()
{
return sqrt(sqr(pt.x-ps.x)+sqr(pt.y-ps.y));
}
real line::angle()
{
return atan2(pt.x-ps.x,pt.y-ps.y);
/*
if (pt.y>=ps.y)
return -(pt.x-ps.x)/len();
else
return (pt.x-ps.x)/len()+1e5;*/
/*
if (pt.y>=ps.y)
return acos((pt.x-ps.x)/len());
else
return 2*pi-acos((pt.x-ps.x)/len());
*/
}
bool line::leftside(point pp)
{
return sgn(det(line(pp,ps),*this))>;
}
void line::print()
{
printf("Line:[%.2lf,%.2lf] -> [%.2lf,%.2lf]\n",(double)ps.x,(double)ps.y,(double)pt.x,(double)pt.y);
}
point line::mid_point()
{
return point((ps.x+pt.x)/,(ps.y+pt.y)/);
}
line line::mid_vertical()
{
return line(mid_point(),pt.y-ps.y,ps.x-pt.x);
}
real operator *(line l1,line l2)
{
return det(l1,l2);
}
line operator -(point p1,point p2)
{
return line(p2,p1);
}
bool parallel(line l1,line l2)
{
return sgn(det(l1,l2))==;
}
point crossover(line l1,line l2)
{
real s1=det(l1,l2.ps-l1.ps);
real s2=-det(l1,l2.pt-l1.ps);
return point(l2.ps.x+s1/(s1+s2)*(l2.pt.x-l2.ps.x),
l2.ps.y+s1/(s1+s2)*(l2.pt.y-l2.ps.y));
}
real area(point p1,point p2,point p3)
{
return (p2-p1)*(p3-p1)/;
}
typedef line halfplane;
bool cmp_line_angle(line l1,line l2)
{
return sgn(l2.angle()-l1.angle())<;
}
bool cmp_halfplane(halfplane p1,halfplane p2)
{
int res=sgn(p1.angle()-p2.angle());
if (!res)return p2.leftside(p1.ps);
return sgn(res)<;
}
void halfplane_intersection(vector<halfplane> vec,vector<point> &res)
{
sort(vec.begin(),vec.end(),cmp_halfplane); /*for (int i=0;i<(int)vec.size();i++)
{
vec[i].print();
printf("%.5lf\n",(double)vec[i].angle());
}*/
deque<halfplane> q;
deque<point> ans;
q.clear(),ans.clear();
// vec[0].print();
// printf("%.5lf\n",(double)vec[0].angle());
point pt;
q.push_back(vec[]);
for (int i=;i<(int)vec.size();i++)
{
// vec[i].print();
// printf("%.5lf\n",(double)vec[i].angle());
if (parallel(vec[i],vec[i-]))continue;
while (ans.size() && !vec[i].leftside(ans.back()))
{
ans.pop_back();
q.pop_back();
}
while (ans.size() && !vec[i].leftside(ans.front()))
{
ans.pop_front();
q.pop_front();
}
if (parallel(vec[i],q.back()))
{
res.clear();
return ;
}
pt=crossover(vec[i],q.back());
ans.push_back(pt);
q.push_back(vec[i]);
}
bool flag=true;
while (flag)
{
flag=false;
while (ans.size() && !q.front().leftside(ans.back()))
ans.pop_back(),q.pop_back(),flag=true;
while (ans.size() && !q.back().leftside(ans.front()))
ans.pop_front(),q.pop_front(),flag=true;
}
if (q.size()>=)
{
pt=crossover(q.back(),q.front());
ans.push_back(pt);
}
res=vector<point>(ans.begin(),ans.end());
return ;
}
real area(vector<point> &vec)
{
real ans=;
for (int i=;i<(int)vec.size();i++)
{
ans+=area(point(,),vec[i],vec[(i+)%vec.size()]);
}
return abs(ans);
}
void convex_hull(vector<point> vec,vector<point> &res)
{
sort(vec.begin(),vec.end(),cmp_point_position);
res.clear();
res.push_back(vec[]);
for (int i=;i<vec.size();i++)
{
while (res.size()> && !(line(res[res.size()-],res[res.size()-])).leftside(vec[i]))
res.pop_back();
res.push_back(vec[i]);
}
int h=vec.size();
for (int i=vec.size()-;i>=;i++)
{
while (res.size()>h && !(line(res[res.size()-],res[res.size()-])).leftside(vec[i]))
res.pop_back();
res.push_back(vec[i]);
}
res.pop_back();
}
class circle
{
public:
point ct;
real r;
circle(){ct=point(,),r=;};
circle(point ct,real r):ct(ct),r(r){};
circle(point p1,point p2,point p3)
{
line l1=line(p1,p2).mid_vertical();
line l2=line(p1,p3).mid_vertical();
ct=crossover(l1,l2);
r=dis(ct,p1);
}
bool inside(point pt);
bool on_border(point pt);
bool outside(point pt);
};
bool circle::inside(point pt)
{
return sgn(r-dis(pt,ct))>;
}
bool circle::on_border(point pt)
{
return sgn(r-dis(pt,ct))==;
}
bool circle::outside(point pt)
{
return sgn(r-dis(pt,ct))<;
}
}; using namespace geometry;
int topv=-;
point pl[MAXN];
int main()
{
freopen("input.txt","r",stdin);
int i,j,k;
int n;
scanf("%d",&n);
for (i=;i<n;i++)
pl[i].read();
for (i=;i<n*;i++)
swap(pl[rand()%n],pl[rand()%n]);
circle cnow;
for (i=;i<n;i++)
{
if (cnow.outside(pl[i]))
{
cnow=circle(pl[i],);
for (j=;j<i;j++)
{
if (cnow.outside(pl[j]))
{
cnow.ct=mid_point(pl[i],pl[j]);
cnow.r=dis(pl[i],pl[j])/;
for (k=;k<j;k++)
{
if (cnow.outside(pl[k]))
{
cnow=circle(pl[i],pl[j],pl[k]);
}
}
}
}
}
}
printf("%.10lf\n",(double)cnow.r);
printf("%.10lf %.10lf\n",(double)cnow.ct.x,(double)cnow.ct.y);
}

poj 2451

  必须交c++,如果用g++会wa,我在提交界面刷了六页的屏。。。。

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<vector>
#include<deque>
using namespace std;
#define MAXN 51000
namespace geometry
{
typedef long double real;
const real pi=3.1415926535897;
const real eps=1e-;
inline real sqr(real x)
{
return x*x;
}
inline int sgn(real x)
{
if (abs(x)<eps)return ;
return x<?-:;
}
class point
{
public:
real x,y;
point(){x=y=;}
point(real x,real y):x(x),y(y){};
void read();
void print();
};
inline void point::read()
{
double xx,yy;
scanf("%lf%lf\n",&xx,&yy);
x=xx;y=yy;
}
inline void point::print()
{
printf("Point:[%.2lf,%.2lf]\n",(double)x,(double)y);
}
inline real dis(point p1,point p2)
{
return sqrt(sqr(p1.x-p2.x)+sqr(p1.y-p2.y));
}
inline bool cmp_point_position(point p1,point p2)
{
if (p1.y!=p2.y)return p1.y<p2.y;
return p1.x<p2.x;
}
class line
{
public:
point ps;
point pt;
line(point ps,point pt):ps(ps),pt(pt){}
line(){}
real len();
real angle();
bool leftside(point pp);
bool rightside(point pp);
void print(); };
inline real dot(line& l1,line& l2)
{
return (l1.pt.x-l1.ps.x)*(l2.pt.x-l2.ps.x)
+(l1.pt.y-l1.ps.y)*(l2.pt.y-l2.ps.y);
}
inline real det(line l1,line l2)
{
return (l1.pt.x-l1.ps.x)*(l2.pt.y-l2.ps.y) -
(l1.pt.y-l1.ps.y)*(l2.pt.x-l2.ps.x);
}
inline real line::len()
{
return sqrt(sqr(pt.x-ps.x)+sqr(pt.y-ps.y));
}
inline real line::angle()
{
//return atan2(pt.x-ps.x,pt.y-ps.y);
/* if (pt.y>=ps.y)
return -(pt.x-ps.x)/len();
else
return (pt.x-ps.x)/len()+10;*/ if (pt.y>=ps.y)
return acos((pt.x-ps.x)/len());
else
return *pi-acos((pt.x-ps.x)/len()); }
inline bool line::leftside(point pp)
{
return sgn(det(line(pp,ps),*this))>;
}
inline bool line::rightside(point pp)
{
return sgn(det(line(pp,ps),*this))<;
}
inline void line::print()
{
printf("Line:[%.2lf,%.2lf] -> [%.2lf,%.2lf]\n",(double)ps.x,(double)ps.y,(double)pt.x,(double)pt.y);
}
inline real operator *(line l1,line l2)
{
return det(l1,l2);
}
inline line operator -(point p1,point p2)
{
return line(p2,p1);
}
inline bool parallel(line l1,line l2)
{
return sgn(l1.angle()-l2.angle())==;
//return sgn(det(l1,l2))==0;
}
inline point crossover(line l1,line l2)
{
if (!sgn(det(l1,l2)))throw ;
real s1=det(l1,l2.ps-l1.ps);
real s2=-det(l1,l2.pt-l1.ps);
return point(l2.ps.x+s1/(s1+s2)*(l2.pt.x-l2.ps.x),
l2.ps.y+s1/(s1+s2)*(l2.pt.y-l2.ps.y));
}
inline real area(point p1,point p2,point p3)
{
return det(line(p2,p1),line(p3,p1))/;
}
typedef line halfplane;
inline bool cmp_line_angle(line l1,line l2)
{
return sgn(l2.angle()-l1.angle())<;
}
inline bool cmp_halfplane(halfplane p1,halfplane p2)
{
int res=sgn(p1.angle()-p2.angle());
if (!res)return !p2.rightside(p1.ps);
return res<;
}
halfplane q[MAXN];
point qp[MAXN];
void halfplane_intersection(vector<halfplane> &vec,vector<point> &res)
{
sort(vec.begin(),vec.end(),cmp_halfplane);
int x=;
//for (int i=0;i<(int)vec.size();i++)
// {
// vec[i].print();
//printf("%.5lf\n",(double)vec[i].angle());
// }
// vec[0].print();
// printf("%.5lf\n",(double)vec[0].angle());
res.clear();
q[]=vec[];
int head=,tail=;
point pt;
//vec[0].print();
for (register int i=;i<(int)vec.size();i++)
{
//vec[i].print();
if (parallel(vec[i],vec[i-]))continue;
while (head<tail && vec[i].rightside(qp[tail-]))
tail--;
while (head<tail && vec[i].rightside(qp[head]))
head++;
q[++tail]=vec[i];
if (!sgn(det(q[tail],q[tail-])) && q[tail].rightside(q[tail-].ps))
{
res.clear();return ;
}
qp[tail-]=crossover(q[tail],q[tail-]);
}
while (head<tail && q[head].rightside(qp[tail-]))
tail--;
while (head<tail && q[tail].rightside(qp[head]))
head++;
if (head==tail)
{
return;
}
for (register int i=head;i<tail;i++)
res.push_back(qp[i]);
if (tail->head)//???
res.push_back(crossover(q[head],q[tail]));
return ;
}
real area(vector<point> &vec)
{
register real ans=;
for (register int i=;i<(int)vec.size();i++)
{
ans+=area(point(,),vec[i],vec[(i+)%vec.size()]);
}
return abs(ans);
}
void convex_hull(vector<point> &vec,vector<point> &res)
{
res.clear();
res.push_back(vec[]);
for (int i=;i<(int)vec.size();i++)
{
while (res.size()> && !(line(res[res.size()-],res[res.size()-])).leftside(vec[i]))
res.pop_back();
res.push_back(vec[i]);
}
int h=vec.size();
for (int i=(int)vec.size()-;i>=;i++)
{
while (res.size()>h && !(line(res[res.size()-],res[res.size()-])).leftside(vec[i]))
res.pop_back();
res.push_back(vec[i]);
}
res.pop_back();
}
}
using namespace geometry;
int topv=-;
vector<halfplane> vv;
vector<point> ans;
point pl[MAXN];
int main()
{
//freopen("input.txt","r",stdin);
int i;
int n;
while (~scanf("%d",&n) && ~n)
{
point pt;
vv.clear();
vv.push_back(line(point(,),point(,)));
vv.push_back(line(point(,),point(,)));
vv.push_back(line(point(,),point(,)));
vv.push_back(line(point(,),point(,)));
double a,b,c,d;
for (i=;i<n;i++)
{
scanf("%lf%lf%lf%lf",&a,&b,&c,&d);
vv.push_back(line(point(a,b),point(c,d)));
}
// crossover(vv[4],vv[5],pt);
halfplane_intersection(vv,ans);
// for (i=0;i<(int)ans.size();i++)
// ans[i].print();
printf("%.1lf\n",(double)area(ans));
}
}

计算几何模板 (bzoj 1336,poj 2451 ,poj3968)的更多相关文章

  1. POJ 2451 Uyuw's Concert (半平面交)

    题目链接:POJ 2451 Problem Description Prince Remmarguts solved the CHESS puzzle successfully. As an awar ...

  2. lrj计算几何模板

    整理了一下大白书上的计算几何模板. #include <cstdio> #include <algorithm> #include <cmath> #include ...

  3. [BZOJ 1336] [Balkan2002] Alien最小圆覆盖 【随机增量法】

    题目链接:BZOJ - 1336 题目分析 最小圆覆盖有一个算法叫做随机增量法,看起来复杂度像是 O(n^3) ,但是可以证明其实平均是 O(n) 的,至于为什么我不知道= = 为什么是随机呢?因为算 ...

  4. HDU 5130 Signal Interference(计算几何 + 模板)

    HDU 5130 Signal Interference(计算几何 + 模板) 题目链接http://acm.hdu.edu.cn/showproblem.php?pid=5130 Descripti ...

  5. UVA 12304 - 2D Geometry 110 in 1! - [平面几何基础题大集合][计算几何模板]

    题目链接:https://cn.vjudge.net/problem/UVA-12304 题意: 作为题目大合集,有以下一些要求: ①给出三角形三个点,求三角形外接圆,求外接圆的圆心和半径. ②给出三 ...

  6. 计算几何--求凸包模板--Graham算法--poj 1113

    Wall Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 28157   Accepted: 9401 Description ...

  7. 最小圆覆盖 [模板] BZOJ 1337&1336

    题目描述 给出N个点,让你画一个最小的包含所有点的圆. 输入输出格式 输入格式: 先给出点的个数N,2<=N<=100000,再给出坐标Xi,Yi.(-10000.0<=xi,yi& ...

  8. Bzoj 1336&1337 Alien最小圆覆盖

    1336: [Balkan2002]Alien最小圆覆盖 Time Limit: 1 Sec  Memory Limit: 162 MBSec  Special Judge Submit: 1473  ...

  9. ZBT的计算几何模板

    Basic template 一个基础型模板包括一个向量的实现 DATE: 2015-06-01 #define op operator #define __ while #define _0 ret ...

随机推荐

  1. jQuery动态实现title的修改 失效问题

    最近做了一个网站,一切都很顺利,在上线的时候,突然发现一个严重的问题,开始面对这个问题,完全不知所措(在goole.火狐.IE9及其以上都没得问题:IE8及其低版本都失效)只是浏览器弹出一个bug,但 ...

  2. IPv6 neighbor discovery

    IPv6 neighbor discovery By stretch | Thursday, August 28, 2008 at 5:03 a.m. UTC Neighbor Discovery P ...

  3. Android_Service

    xml文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:t ...

  4. 一行 Python 代码搞定一棵树

    使用 Python 内建的 defaultdict 方法可以轻松定义一个树的数据结构. 简单的说树也可以是一个字典数据结构           Python   1 def tree(): retur ...

  5. IIS限制ASP.Net 文件上传大小解决方案,修改IIS7/7.5配置

    当在web.config中设置了 httpruntime 后还是无法成功上传大文件,则要修改IIS的系统config IIS 7 默认文件上传大小是30M 要突破这个限制: 修改IIS的applica ...

  6. YII中的session和cookie

    session的使用 存储数据 Yii::app()->session["名"] = 值; 取数据 $变量 = Yii::app()->session["名& ...

  7. 图灵API

    namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine( ...

  8. Highcharts在IE中不能一次性正常显示的一种解决办法

    由于客户要求必须在IE浏览器下兼容图表,故选用了兼容性较好的Highcharts.另外说一句,博主尝试过ichartjs.ECharts.YUI,兼容性都没有Highcharts给力(所有的兼容性问题 ...

  9. Ext.Net学习笔记07:Ext.Net DirectMethods用法详解

    使用DirectMethods在JS中调用C#方法 我承认,这个标题有点噱头,其实应该是通过DirectMethods,在JS中通过异步调用的方式执行服务器端的方法. 来看一个例子吧: [Direct ...

  10. weblogic9.2重置密码

    1.删除DefaultAuthenticatorInit.ldift 2.执行命令:java -cp /home/weblogic/bea/weblogic92/server/lib/weblogic ...