LeetCode 780. Reaching Points
2024-10-20 16:42:50
题目链接:https://leetcode.com/problems/reaching-points/
题意:给定操作可以使点(x,y)变为点(x+y,y)或者点(x,x+y)。现已知初始点(sx,sy)和目标点(tx,ty),问是否能使用该变换使得(sx,sy)变为(tx,ty)。变换次数不限。\(1\leq sx,sy,tx,ty \leq1e9\)
最简单的方法是BFS,但是数据范围BFS会超时,当tx大于sx时,应该不断从tx中减去ty直到tx不大于sx或者tx不大于ty。反之如果ty比tx大亦然。
class Solution {
public:
bool reachingPoints(int sx, int sy, int tx, int ty) {
int cnt = 0;
while (tx-sx>=ty||ty-sy>=tx) {
if (tx>ty&&tx>sx)
tx = tx-(tx - sx)/ ty*ty;
if (ty>tx&&ty>sy)
ty = ty - (ty - sy)/ tx * tx ;
}
return tx == sx&&ty == sy;
}
};
最新文章
- 简述cookie
- 在中文windows下使用pywinauto进行窗口操作
- 如何将ADT项目导入Android studio及常見問題
- Unity Standard Assets 简介之 2D
- redis 简介
- oracle查看允许的最大连接数和当前连接数等信息
- C#多态联系之虚方法
- 自定义VS的ItemTemplates 实现任意文件结构
- 正则表达式 提取<;A>;标签
- 简单的Java逻辑小代码(打擂台,冒泡排序,水仙花数,回文数,递归)
- 痞子衡嵌入式:串口调试工具Jays-PyCOM诞生记 - 索引
- The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application问题解决方案参考
- Thinkphp框架中自定义修改success和error页面
- Linux记录-CPU指标介绍
- Django REST framework API开发
- java 权重随机算法实现
- Vue组件中引入jQuery
- JS中的兼容问题总结
- 分析:新建短信,当我们接受人RecipientsEditor中输入+86的时候,系统会自动在+86后加入空格
- java命令执行jar文件
热门文章
- GPU编程和流式多处理器(四)
- 【逆向实战】恶意勒索软件分析_披着羊皮的狼_被注入恶意代码的apk
- Django基础之模型层(02)
- 5000字长文,kurryluo 的自学编程之路
- 性能工具之linux三剑客awk、grep、sed详解
- 关于开箱即用的文档静态网站生成器VuePress
- layui table 使用table放输入框时控制每列的宽度
- Vue $emit
- My Idol:Beihai Zhang --<;<;The Three-body Problem>;>;
- Spring:Spring的各jar包依赖及作用详解