giaoxu02

Xem PDF

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

cho \(n\) đường tròn có bán kính \(r\), và 1 đường tròn O có bán kính \(R\).

Hỏi có thể đặt \(n\) đường tròn bán kính \(r\) đó vào trong đường tròn O sao cho

  • \(n > 1\): 2 đường tròn bất kỳ trong \(n\) đường tròn có nhiều nhất \(1\) điểm chung
  • mỗi đường tròn phải có ít nhất 1 điểm chung với đường tròn O.

Nhập \(n, R, r\), kiểm tra tính khả thi - "YES" (khả thi) - "NO" ko khả thi.

Lưu ý nhập nhiều test.

Example

Test 1

Input
2
4 10 4
5 10 4
Output
YES
NO

Bình luận


  • 0
    thanphong    7:56 p.m. 24 Tháng 2, 2022
    1. from sys import stdin

    from math import pi,asin,degrees as rad

    q=int(stdin.readline())

    for i in range(q):

    n, R, r = map(int, stdin.readline().split())
    
    if r==R and n==1:
    
        print('YES')
    
    elif r>R or (r==R and n!=1):
    
        print('NO')
    
    else:
    
        if r/(R-r)>1 and n!=1:
            print('NO')
        elif r/(R-r)>1 and n==1:
            print('YES')
        else:
            t = asin(r / (R - r))
            t = rad(t) * 2 * n
            print(t)
            if t > 360.00000000000006:
                print('NO')
            else:
                # print(t)
                print('YES')
    
    • 3 bình luận nữa