๊ด€๋ฆฌ ๋ฉ”๋‰ด

yeon's ๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป

[C++] ๋ฐฑ์ค€(BOJ) | 1064๋ฒˆ: ํ‰ํ–‰์‚ฌ๋ณ€ํ˜• ๋ณธ๋ฌธ

Computer ๐Ÿ’ป/์•Œ๊ณ ๋ฆฌ์ฆ˜

[C++] ๋ฐฑ์ค€(BOJ) | 1064๋ฒˆ: ํ‰ํ–‰์‚ฌ๋ณ€ํ˜•

yeon42 2021. 8. 16. 19:22
728x90

 

 

 

ํ‰ํ–‰์‚ฌ๋ณ€ํ˜•์˜ ๊ธฐ๋ณธ ์„ฑ์งˆ๋งŒ ์•Œ๊ณ  ์žˆ๋‹ค๋ฉด ์–ด๋ ต์ง€ ์•Š์•˜๋˜ ๋ฌธ์ œ

 

์„ธ ์ ์ด ๋‚˜์™€์žˆ์œผ๋ฏ€๋กœ ์„ธ ๋ณ€์ด ๋‚˜์˜จ๋‹ค.

์„ธ ๋ณ€์˜ ๊ธธ์ด ์ค‘ ์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•˜๋ฉด ๋ !

 

 

#include <iostream>
#include <cmath>
using namespace std;

double Distance(int p1, int p2, int q1, int q2) {
    double distance;
    distance = sqrt(pow(p1-q1, 2) + pow(p2-q2, 2));

    return distance;
}

int main() {
    int xa, ya, xb, yb, xc, yc, xd, yd;
    cin >> xa >> ya >> xb >> yb >> xc >> yc;

    double l1, l2, l3;
    double max_dist, min_dist;

    l1 = 2 * Distance(xa, ya, xb, yb);
    l2 = 2 * Distance(xb, yb, xc, yc);
    l3 = 2 * Distance(xc, yc, xa, ya);

    if ((yb-ya)*(xc-xb) == (yc-yb)*(xb-xa)) {
        cout << -1.0 << endl;
    }
    else {
        l1 = 2 * Distance(xa, ya, xb, yb);
        l2 = 2 * Distance(xb, yb, xc, yc);
        l3 = 2 * Distance(xc, yc, xa, ya);

        max_dist = max(max(l1, l2), l3);
        min_dist = min(min(l1, l2), l3);
        
        printf("%.10lf\n", max_dist - min_dist);
    }
}

 

- ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š” ๊ณต์‹์—์„œ๋Š” <cmath>๋ฅผ importํ•ด

  pow()๋ผ๋Š” ์ œ๊ณฑ ํ•จ์ˆ˜์™€ sqrt()๋ผ๋Š” ๋ฃจํŠธ ํ•จ์ˆ˜ ์ด์šฉํ•˜๊ธฐ

Comments