fork download
  1. #include <cstdlib>
  2. #include <cstdio>
  3. #include <iostream>
  4. #include <sstream>
  5. #include <cstring>
  6. #include <string>
  7. #include <utility>
  8. #include <stack>
  9. #include <queue>
  10. #include <vector>
  11. #include <map>
  12. #include <algorithm>
  13. #include <functional>
  14. #include <cmath>
  15. #include <list>
  16. #include <set>
  17. using namespace std;
  18.  
  19. typedef pair<int, int> ii;
  20. typedef vector<int> vi;
  21. typedef vector<ii> vii;
  22. #define rep(i,a,b) for((i)=(a);(i)<=(b);(i)++)
  23. vector<vii> adj_list;
  24.  
  25. vi dist;
  26.  
  27. //BEFORE SUBMISSION, COMMENT OUT THIS LINE--> freopen("text", "r", stdin);
  28.  
  29. int main() {
  30. int l, c, m, n, i, x, y, j, k, t, sum = 0, cases = 1, maximum, minimum,
  31. count1 = 0;
  32. //freopen("text", "r", stdin);
  33. while (1) {
  34. int a, b, v, s, An, vert, hor;
  35. double sx, sy, ux, uy, acx, acy, A;
  36. scanf("%d%d%d%d%d", &a, &b, &v, &An, &s);
  37. if (a == 0 && b == 0 && v == 0 && An == 0 && s == 0)
  38. break;
  39. A = ((double) An / (double) 180) * M_PI;
  40. ux = abs((double) v * cos(A));
  41. uy = abs((double) v * sin(A));
  42. sx = sy = 0;
  43. hor = 0, vert = 0;
  44. if (An == 90) {
  45. acy = uy / (double) s;
  46. sy = abs(uy * uy / (2 * acy));
  47. } else if (An == 0) {
  48. acx = ux / (double) s;
  49. sx = abs(ux * ux / (2 * acx));
  50. } else {
  51. if (ux > uy) {
  52. acx = ux / (double) s;
  53. acy = acx * sin(A) / cos(A);
  54. } else {
  55. acy = uy / (double) s;
  56. acx = acy * cos(A) / sin(A);
  57. }
  58. sx = abs(ux * ux / (2 * acx));
  59. sy = abs(uy * uy / (2 * acy));
  60. }
  61. //printf("%sx=%f,sy=%f:", sx, sy);
  62. if (sx >= a / 2)
  63. hor = 1;
  64. if (sy >= b / 2)
  65. vert = 1;
  66. sx -= (double) a / 2;
  67. sy -= (double) b / 2;
  68. if (sx < 0)
  69. sx = 0;
  70. if (sy < 0)
  71. sy = 0;
  72. vert += (int) (sy / b);
  73. hor += (int) (sx / a);
  74. printf("%d %d\n", hor, vert);
  75. }
  76. return 0;
  77. }
  78.  
  79.  
Success #stdin #stdout 0s 3300KB
stdin
9593 7235 8682 30 9645
0 0 0 0 0
stdout
3780 2893