Tam giác không cân

Xem PDF

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 1023M Input: bàn phím Output: màn hình

Để tham gia câu lạc bộ Origami của trường, Huy phải:

"Viết chương trình kiểm tra xem 3 số nguyên dương nhập vào có thể là 3 cạnh của một tam giác KHÔNG cân hay không."

Vì laptop của Huy đã bị hỏng, bạn hãy giúp Huy giải bài tập trên. Biết rằng tam giác đều là tam giác cân.

Input

  • Một dòng duy nhất gồm 3 số nguyên dương \(a,b,c \left(a,b,c\leq 10^{18}\right)\)

Các số trên một dòng của input file được ghi cách nhau bởi dấu cách

Output

  • Ghi ra "YES" nếu 3 số nguyên dương là 3 cạnh của của một tam giác KHÔNG cân, ngược lại in ra "NO"

Example

Test 1

Input
3 4 5 
Output
YES
Note

Bình luận


  • 0
    blinh    9:26 a.m. 6 Tháng 2, 2024 chỉnh sửa 5

    đã hiểu


    • 1
      ldvl2511    12:10 p.m. 6 Tháng 4, 2023 đã chỉnh sửa

      Mình không hiểu trường hợp 7444444 33333342433 444422222 thì cân kiểu gì nhỉ?
      update: đã hiểu ;(


      • 3
        mcsmuscle    12:06 a.m. 27 Tháng 10, 2021 đã chỉnh sửa

        (7444444 33333342433 444422222 trường hợp này thì tạo tam giác cân kiểu gì nhỉ ??)
        update: Đã hiểu !

        1 phản hồi

        • 2
          iamanoob12    9:05 p.m. 18 Tháng 10, 2020

          SPOILER ALLERT:

          Bài 7 ngoài điều kiện đề ra ta cần phải xét bất tam giác
          Bất tam giác của lớp 7:

          tổng 2 cạnh trong 1 tam giác luôn lớn hơn cạnh còn lại
          tức là (a + c)>b với a,b,c là các cạnh của 1 tam giác

          source code:

          include <iostream>

          using namespace std;

          int main()
          {
          long long a, b, c;
          cin >> a >> b >> c;

          if (a == b || a == c || b == c || a + b <= c || a + c <= b || b + c <= a)
              {
                  cout << "NO";
              }
          else
          {
              cout << "YES";
          }
          

          }


          • 5
            SPyofgame    1:45 p.m. 9 Tháng 6, 2020 chỉnh sửa 7

            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;
            }
            
            1 phản hồi