# Solving Leetcode Interviews in Seconds with AI: Reaching Points


	# Introduction
	In this blog post, we will explore how to solve the LeetCode problem "780" using AI. LeetCode is a popular platform for preparing for coding interviews, and with the help of AI tools like [Chatmagic](https://www.chatmagic.app), we can generate solutions quickly and efficiently - helping you pass the interviews and get the job offer without having to study for months.

	# Problem Statement
	> Given four integers sx, sy, tx, and ty, return true if it is possible to convert the point (sx, sy) to the point (tx, ty) through some operations, or false otherwise. The allowed operation on some point (x, y) is to convert it to either (x, x + y) or (x + y, y).   Example 1:  Input: sx = 1, sy = 1, tx = 3, ty = 5 Output: true Explanation: One series of moves that transforms the starting point to the target is: (1, 1) -> (1, 2) (1, 2) -> (3, 2) (3, 2) -> (3, 5)  Example 2:  Input: sx = 1, sy = 1, tx = 2, ty = 2 Output: false  Example 3:  Input: sx = 1, sy = 1, tx = 1, ty = 1 Output: true    Constraints:  1 <= sx, sy, tx, ty <= 109  

	# Explanation
	Here's the breakdown of the problem and the Python solution:

*   **High-Level Approach:**

    *   Work backward from the target (tx, ty) towards the source (sx, sy). This avoids exploring unnecessary branches.
    *   At each step, determine which operation could have led to the current point and reverse it.
    *   If we reach (sx, sy), it's possible; otherwise, it's not.

*   **Complexity:**

    *   Runtime: O(log(max(tx, ty))), Storage: O(1)

	
	# Code
	```python
	def reachingPoints(sx: int, sy: int, tx: int, ty: int) -> bool:
    while tx >= sx and ty >= sy:
        if tx == sx and ty == sy:
            return True
        if tx == ty:
            return False
        if tx > ty:
            if ty > sy:
                tx %= ty
            else:
                return (tx - sx) % ty == 0
        else:
            if tx > sx:
                ty %= tx
            else:
                return (ty - sy) % tx == 0
    return False
	```
			
