Hướng dẫn possible path hackerrank solution python - con đường có thể giải pháp hackerrank python

Định nghĩa vấn đề ngắn:

Adam đang đứng ở điểm & nbsp; (a, b) & nbsp; trong một lưới 2D vô hạn. Anh ta muốn biết nếu anh ta có thể đạt đến điểm & nbsp; (x, y) & nbsp; hoặc không. Hoạt động duy nhất anh ta có thể làm là di chuyển đến điểm & nbsp; (a+b, b) (a, b+a) (a-b, b) hoặc (a, b-a) & nbsp; từ một số điểm & nbsp; (a, b). Nó được cho là anh ta có thể di chuyển đến bất kỳ điểm nào trên lưới 2D này, tức là, các điểm có tọa độ tích cực hoặc âm & nbsp; (hoặc & nbsp;).

Nói với Adam rằng anh ta có thể tiếp cận & nbsp; & nbsp; hay không.

Liên kết

Có thể là con đường

Complexity:

Độ phức tạp về thời gian là O (log (n))

Độ phức tạp không gian là O (1)

Execution:

Tuyên bố vấn đề không yêu cầu đường dẫn từ A, B đến X, Y, chỉ là một đường dẫn tồn tại. Điều này làm cho nó một vấn đề toán học.

Chúng tôi biết rằng GCD (A, B) == GCD (A+B, B) == GCD (A-B, B). Tại sao? Bởi vì nếu một cái gì đó là một ước số D của B, việc thêm/trừ B từ bất kỳ số A nào cũng chia hết bởi D sẽ không thay đổi yêu cầu chia rẽ.

Do đó gcd (a, b) == gcd (a+n*b, b+m*a) trong đó n, m là số nguyên.

Theo các quy tắc, chúng ta có thể nhận ra rằng GCD (A+N*B, B+M*A) là GCD (X, Y), dẫn chúng ta đến giải pháp cuối cùng.

Solution:

def gcd(a, b):
    if a % b == 0:
        return b
    else:
        return gcd(b, a % b)

def solve(a, b, x, y):
    return gcd(a,b) == gcd(x,y)

Nếu bạn thích bài đăng này, thì hãy chắc chắn rằng bạn đăng ký nhận bản tin và/hoặc nguồn cấp dữ liệu của tôi.

6 tháng trước+ 0 bình luận in an infinite 2D grid. He wants to know if he can reach point or not. The only operation he can do is to move to point from some point . It is given that he can move to any point on this 2D grid, i.e., the points having positive or negative (or ) co-ordinates.

Nói với Adam rằng anh ta có thể tiếp cận hay không. or not.

Định dạng đầu vào

Dòng đầu tiên chứa một số nguyên, theo sau là các dòng, mỗi dòng chứa các số nguyên được phân tách không gian, tức là, và., followed by lines, each containing space-separated integers i.e. , , and .

Định dạng đầu ra

Đối với mỗi trường hợp thử nghiệm, hiển thị YES hoặc NO cho biết liệu Adam có thể tiếp cận hay không. or not.

Đầu vào mẫu

3
1 1 2 3
2 1 2 3
3 3 1 1

Giải trình

  1. (1,1) -> (2,1) -> (2,3).

Chúng tôi sử dụng cookie để đảm bảo bạn có trải nghiệm duyệt tốt nhất trên trang web của chúng tôi.Vui lòng đọc chính sách cookie của chúng tôi để biết thêm thông tin về cách chúng tôi sử dụng cookie.

  • Chuẩn bị các

    MỚI

  • Chứng nhận
  • Tranh đua

  • Thuê nhà phát triển?

  1. Chuẩn bị các
  2. MỚI
  3. Chứng nhận
  4. Tranh đua
  5. Thuê nhà phát triển?

toán học

  • Hướng dẫn possible path hackerrank solution python - con đường có thể giải pháp hackerrank python

    Nguyên tắc cơ bản+ 0 comments

    Có thể là con đường

  • Hướng dẫn possible path hackerrank solution python - con đường có thể giải pháp hackerrank python

    Thảo luận+ 0 comments

    Vui lòng đăng nhập để đăng bình luận

  • Hướng dẫn possible path hackerrank solution python - con đường có thể giải pháp hackerrank python

    3 tuần trước+ 0 bình luận+ 0 comments

    Nó chưa thử giải pháp này, nhưng tôi nghĩ nó chắc chắn sẽ hoạt động.Mycenturahealth

    if x%a==0 and b==0:
        return 'YES'
    elif y%b==0 and a==0:
        return 'YES'
    elif ((x%b)%a)==0 and ((y%a)%b)==0:
        return 'YES'
    else:
    

    3 tháng trước+ 0 bình luận

  • Hướng dẫn possible path hackerrank solution python - con đường có thể giải pháp hackerrank python

    Cảm ơn vì đã chia sẻ giải pháp này, tôi đã tìm kiếm điều này trong một thời gian khá dài.Betty Jean Harris+ 0 comments

    4 tháng trước+ 0 bình luận

  • Hướng dẫn possible path hackerrank solution python - con đường có thể giải pháp hackerrank python

    10 tháng trước+ 0 bình luận+ 0 comments

    Tôi không đồng ý với lý luận của Arunatebel.Nếu GCD (a, b) = 1, thì mỗi (x, y) sẽ có thể truy cập được bắt đầu từ (a, b).Nhưng điều này dường như không phải là trường hợp.Tại sao?