Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- struct dd
- {
- int x;
- double viteza;
- };
- dd v[10005];
- const double eps=1.e-14;
- bool cmp(double a ,double b)
- {
- if(a-b<=eps)return 1;
- return 0;
- }
- double timp[10005];
- double r;
- double sol(dd a,dd b)
- {
- if(fabs(a.x-b.x)<=2*r)
- {
- return 0;
- }
- if(b.x-a.x<=-eps)
- {
- dd m;
- m=a;
- a=b;
- b=m;
- }
- if(b.x-a.x>=eps)
- {
- if(b.viteza>0&&a.viteza<0)return 0;
- if(b.viteza>0&&b.viteza-a.viteza>0)return 0;
- if(b.viteza<0&&a.viteza<0&&b.viteza-a.viteza<0)return 0;
- return 1.0*(b.x-a.x-2*r)/(a.viteza-b.viteza);
- }
- }
- int main()
- {
- freopen("bomba.in","r",stdin);
- freopen("bomba.out","w",stdout);
- int n;
- int i,j;
- scanf("%d%lf",&n,&r);
- for(i=1;i<=n;i++)
- scanf("%d%lf",&v[i].x,&v[i].viteza);
- int cnt=0;
- for(i=1;i<=n;i++)
- for(j=i+1;j<=n;j++)
- timp[++cnt]=sol(v[i],v[j]);
- for(i=1;i<=cnt;i++)
- printf("%lf\n",timp[i]);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement