Advertisement
kdzhr

1020

Mar 4th, 2020
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.92 KB | None | 0 0
  1. // OK TIMUS 1020
  2.  
  3. # include <iostream>
  4. # include <cmath>
  5. # include <vector>
  6. # include <iomanip>
  7. using namespace std;
  8. double distance(pair<double, double> f, pair<double, double> s) {
  9.     double x1 = f.first;
  10.     double y1 = f.second;
  11.     double x2 = s.first;
  12.     double y2 = s.second;
  13.     double dis_x = x1 - x2;
  14.     double dis_y = y1 - y2;
  15.     return sqrt(dis_x * dis_x + dis_y * dis_y);
  16. }
  17.  
  18. const double PI = 3.1415926535;
  19. int main() {
  20.     double r;
  21.     size_t n;
  22.     double sum = 0;
  23.     cin >> n >> r;
  24.     double res = 2 * PI * r;
  25.     vector<pair<double, double>> m(n);
  26.     for (size_t i = 0; i < n; i++) {
  27.         cin >> m[i].first >> m[i].second;
  28.     }
  29.     for (size_t i = 0; i < n; i++) {
  30.         size_t prev = n - 1;
  31.         if (i != 0) {
  32.             prev = i - 1;
  33.         }
  34.         sum += distance(m[i], m[prev]);
  35.     }
  36.     res += sum;
  37.     cout << fixed << setprecision(2) << res;
  38.     return 0;
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement