fork download
  1. #include<stdio.h>
  2. #include<math.h>
  3. #include<iostream>
  4.  
  5. using namespace std;
  6.  
  7. int main() {
  8.  
  9. int n,i,j=0;
  10. double Vx,Vy,g,x[1024],y[1024],X,Y,a,b,c,t;
  11.  
  12. cin >> g;
  13. cin >> Vx;
  14. cin >> Vy;
  15.  
  16. cin >> n;
  17.  
  18. for(i=0;i<n;i++) {
  19. cin >> x[i];
  20. cin >> y[i];
  21. }
  22.  
  23. for(i=0;i<n-1;i++) {
  24.  
  25. a=g/(2*Vx*Vx);
  26. b=(y[i+1]-y[i])/(x[i+1]-x[i])-Vy/Vx;
  27. c=y[i]-(y[i+1]-y[i])/(x[i+1]-x[i])*x[i];
  28.  
  29. X=(-b+sqrt(b*b-4*a*c))/(2*a);
  30. Y=(y[i+1]-y[i])/(x[i+1]-x[i])*(X-x[i])+y[i];
  31. t=X/Vx;
  32.  
  33. if((((X>=x[i])&&(X<x[i+1]))||((X<=x[i])&&(X>x[i+1])))&&(((Y>=y[i])&&(Y<y[i+1]))||((Y<=y[i])&&(Y>y[i+1])))) {
  34. cout <<"1";
  35. cout << X << " " << Y << " " << t << " " << i <<endl;
  36. j=1;
  37. i=n;
  38. }
  39. }
  40.  
  41. if(j=0) cout << "0" <<endl;
  42.  
  43. return 0;
  44. }
Success #stdin #stdout 0s 15240KB
stdin
1
1
1
2
0
0
1000
0
stdout
Standard output is empty