Hướng dẫn cho Tam giác không cân


Chỉ sử dụng khi thực sự cần thiết như một cách tôn trọng tác giả và người viết hướng dẫn này.

Chép code từ bài hướng dẫn để nộp bài là hành vi có thể dẫn đến khóa tài khoản.

Authors: SPyofgame


Spoiler Alert


Hint 1

Tìm điều kiện tam giác và loại bỏ điều kiện để nó cân, từ đó suy ra kết quả


Hint 2

Điều kiện độ dài các cạnh: (a > 0) && (b > 0) && (c > 0)

Điều kiện để tạo tam giác: (a + b > c) && (b + c > a) && (c + a > b)

Điều kiện để tam giác cân: (a == b) || (b == c) || (c == a)


Hint 3

Điều kiện tam giác không cân: ((a > 0) && (b > 0) && (c > 0)) && ((a + b > c) && (b + c > a) && (c + a > b)) && !((a == b) || (b == c) || (c == a))


Reference AC code | \(O(1)\) time | \(O(1)\) auxiliary space | Math

C++
int main()
{
    ll a, b, c;
    cin >> a >> b >> c;
    bool ok1 = (a > 0) && (b > 0) && (c > 0);
    bool ok2 = (a + b > c) && (b + c > a) && (c + a > b);
    bool ok3 = (a == b) || (b == c) || (c == a);
    cout << ((ok1 && ok2 && !ok3) ? "YES" : "NO");
    return 0;
}

Hint 4

Bạn cũng có thể sắp xếp các cạnh để có công thức toán học gọn hơn


Reference AC code | \(O(1)\) time | \(O(1)\) auxiliary space | Math

C++
ll max(ll a, ll b)       { return a > b ? a : b; }
ll min(ll a, ll b)       { return a < b ? a : b; }
ll med(ll a, ll b, ll c) { return max(min(a, b), min(c, max(a, b))); }
int main()
{
    ll a, b, c;
    cin >> a >> b >> c;
    tie(a , b , c) = make_tuple(  max(a, max(b, c))  ,  med(a, b, c)  ,  min(a, min(b, c))  );
    cout << ((a > b && b > c && c > 0 && b + c > a) ? "YES" : "NO");
    return 0;
}

Reference AC code | \(O(1)\) time | \(O(1)\) auxiliary space | Math

C++
int main()
{
    ll a, b, c;
    cin >> a >> b >> c;
    if (a < b) swap(a, b); if (a < c) swap(a, c); if (b < c) swap(b, c); /// sort 3 so
    cout << ((a > b && b > c && c > 0 && b + c > a) ? "YES" : "NO");
    return 0;
}


Bình luận


  • 2
    Small    2:23 p.m. 9 Tháng 6, 2020

    Điều kiện \((a>0)\&\&(b>0)\&\&(c>0)\) này không cần vì \((a>0)\&\&(b>0)\&\&(c>0)\) đã bao trùm lên nó


    • 0
      SPyofgame    5:54 p.m. 9 Tháng 6, 2020

      Làm sao để hiển thị box Copy vậy thầy OwO


      • 0
        SPyofgame    5:32 p.m. 9 Tháng 6, 2020

        Vâng thầy

        1 bình luận nữa