Advertisement
GerONSo

Untitled

Jul 31st, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.33 KB | None | 0 0
  1. /*
  2. --┬-- | | --┬-- | |
  3. | |\ | | | |
  4. | | \ | | -----> | |
  5. | | \ | | | |
  6. | | \ | | | |
  7. --┴-- | \| | └---- └----
  8.  
  9. */
  10.  
  11. //#define pragma
  12.  
  13. #ifdef pragma
  14. #pragma GCC optimize("Ofast")
  15. #pragma GCC optimize("no-stack-protector")
  16. #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
  17. #pragma GCC optimize("unroll-loops")
  18. #endif // pragma
  19.  
  20. #include<bits/stdc++.h>
  21. #include<string>
  22.  
  23. #define ll long long
  24. #define all(x) begin(x),end(x)
  25. #define pb push_back
  26. #define x first
  27. #define y second
  28. #define INF 9223372036854775807ll
  29. #define PI 3.14159265359d
  30. #define INPUT "input.txt"
  31. #define OUTPUT "output.txt"
  32. #define sz size
  33. #define rsz resize
  34. #define int long long
  35.  
  36. using namespace std;
  37.  
  38. typedef vector<int> vi;
  39. typedef vector<bool> vb;
  40. typedef pair<int,int> pii;
  41. typedef long double ld;
  42. typedef vector<vi> matrix;
  43.  
  44. void seriy() {
  45. ios::sync_with_stdio(0);
  46. cin.tie(0);
  47. cout.tie(0);
  48. #if _android
  49. freopen("input", "r", stdin);
  50. freopen("output", "w", stdout);
  51. #endif
  52. }
  53.  
  54. signed main(){
  55. seriy();
  56. int n;
  57. cin >> n;
  58. map<string, int> mp;
  59. for(int i = 0; i < n; i++) {
  60. string s = "";
  61. int h1, m1, h2, m2;
  62. char c;
  63. while(s[s.length() - 1] != '"') {
  64. string t;
  65. cin >> t;
  66. s += " ";
  67. s += t;
  68. }
  69. cin >> h1 >> c >> m1 >> h2 >> c >> m2;
  70. int t1 = h1 * 60 + m1, t2 = h2 * 60 + m2;
  71. if(t2 <= t1) {
  72. mp[s] = 1440 - t1 + t2;
  73. }
  74. else {
  75. mp[s] = t2 - t1;
  76. }
  77. }
  78. int mn = 1e18;
  79. string ans;
  80. for(auto it = mp.begin(); it != mp.end(); it++) {
  81. //cout << it -> x << " " << it -> y << endl;
  82. if(it -> y < mn) {
  83. mn = it -> y;
  84. ans = it -> x;
  85. }
  86. }
  87. cout << "The fastest train is" << ans << ".\n";
  88. double tmp = mn / 60.;
  89. double sp = 650. / tmp;
  90. int sd = (int)sp;
  91. if(sp - (int)sp >= 0.5) {
  92. sd++;
  93. }
  94. cout << "Its speed is " << sd << " km/h, approximately.";
  95. return 0;
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement