Skip to content

Commit 028cb5d

Browse files
authored
Create Readme.md
1 parent 02ab1ee commit 028cb5d

File tree

1 file changed

+15
-0
lines changed
  • Math/2543.Check-if-Point-Is-Reachable

1 file changed

+15
-0
lines changed
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
### 2543.Check-if-Point-Is-Reachable
2+
3+
我们反过来思考从(x,y)走到(1,1)的操作。将原操作逆过来就是
4+
1. (x,y)->(x+y, y)
5+
2. (x,y)->(x, x+y)
6+
3. (x,y)->(x/2, y) if (x%2==0)
7+
4. (x,y)->(x, y/2) if (y%2==0)
8+
9+
如果我们不看第三和第四条规则,我们可以发现,从(x,y)走到任意的(a,b),其中a必然写作mx+ny的形式。mx+ny必然含有gcd(x,y)。再考虑第三和第四条,我们只能除以2来降低数字的大小,所以如果gcd(x,y)包含非2的因子,我们是如论如何都无法除掉的,最终也不可能达到1.
10+
11+
那么如果`gcd(x,y)`不含2的次方之外的元素,那么如何证明一定能转化为`(1,1)`呢?方案如下:
12+
1. 如果x和y任意一个是偶数,就将该数字除以2。
13+
2. 如果x和y都是奇数,就转化为`(x,(x+y)/2)`或者`((x+y)/2,y)`,目的就是将数字变小。
14+
15+
以上两个操作都一定会将数字变小,除非`x=y=odd`。因为之前说过gcd(x,y)不含2的次方之外的元素,所以只有`x=y=1`是最终的归宿。

0 commit comments

Comments
 (0)