LC-1237. 找出给定方程的正整数解(相向双指针)
1237. 找出给定方程的正整数解
给你一个函数 f(x, y)
和一个目标结果 z
,函数公式未知,请你计算方程 f(x,y) == z
所有可能的正整数 数对 x
和 y
。满足条件的结果数对可以按任意顺序返回。
interface CustomFunction {
public:// Returns some positive integer f(x, y) for two positive integers x and y based on a formula.int f(int x, int y);
};
- 判题程序有一个由
CustomFunction
的9
种实现组成的列表,以及一种为特定的z
生成所有有效数对的答案的方法。 - 判题程序接受两个输入:
function_id
(决定使用哪种实现测试你的代码)以及目标结果z
。 - 判题程序将会调用你实现的
findSolution
并将你的结果与答案进行比较。 - 如果你的结果与答案相符,那么解决方案将被视作正确答案,即
Accepted
。
输入:function_id = 1, z = 5
输出:[[1,4],[2,3],[3,2],[4,1]]
解释:function_id = 1 暗含的函数式子为 f(x, y) = x + y
以下 x 和 y 满足 f(x, y) 等于 5:
x=1, y=4 -> f(1, 4) = 1 + 4 = 5
x=2, y=3 -> f(2, 3) = 2 + 3 = 5
x=3, y=2 -> f(3, 2) = 3 + 2 = 5
x=4, y=1 -> f(4, 1) = 4 + 1 = 5
输入:function_id = 2, z = 5
输出:[[1,5],[5,1]]
解释:function_id = 2 暗含的函数式子为 f(x, y) = x * y
以下 x 和 y 满足 f(x, y) 等于 5:
x=1, y=5 -> f(1, 5) = 1 * 5 = 5
x=5, y=1 -> f(5, 1) = 5 * 1 = 5
1 <= function_id <= 9
1 <= z <= 100
- 题目保证
f(x, y) == z
的解处于1 <= x, y <= 1000
的范围内。 - 在
1 <= x, y <= 1000
的前提下,题目保证f(x, y)
是一个 32 位有符号整数。
class Solution {public List<List<Integer>> findSolution(CustomFunction customfunction, int z) {List<List<Integer>> res = new ArrayList<>();int x = 1, y = 1000;while(x <= 1000 & y > 0){int cur = customfunction.f(x, y);if(cur < z) ++x;else if(cur > z) --y;else{res.add(List.of(x++,y--));}}return res;}
}
LC-1237. 找出给定方程的正整数解(相向双指针)相关推荐
- LeetCode 1237. 找出给定方程的正整数解
1. 题目 给出一个函数 f(x, y) 和一个目标结果 z,请你计算方程 f(x,y) == z 所有可能的正整数 数对 x 和 y. 给定函数是严格单调的,也就是说: f(x, y) < f ...
- 【1237. 找出给定方程的正整数解】
来源:力扣(LeetCode) 描述: 给你一个函数 f(x, y) 和一个目标结果 z,函数公式未知,请你计算方程 f(x,y) == z 所有可能的正整数 数对 x 和 y.满足条件的结果数对可以 ...
- 『力扣刷题』5238_找出给定方程的正整数解 解题代码
html: embed_local_images: true embed_svg: true offline: true toc: undefined print_background: false ...
- leetcode1237. 找出给定方程的正整数解(二分法)
给出一个函数 f(x, y) 和一个目标结果 z,请你计算方程 f(x,y) == z 所有可能的正整数 数对 x 和 y. 给定函数是严格单调的,也就是说: f(x, y) < f(x + 1 ...
- Leetcode5238 找出给定方程的正整数解
题目描述 给出一个函数 f(x, y) 和一个目标结果 z,请你计算方程 f(x,y) == z 所有可能的正整数 数对 x 和 y. 给定函数是严格单调的,也就是说: f(x, y) < f ...
- 两数之和:找出给定数组中和是给定目标整数的两个整数,输出找到的两个整数下标
找出给定数组中和是给定目标整数的两个整数,输出找到的两个整数下标. (本文获得CSDN质量评分[90]) [学习的细节是欢悦的历程] Python 官网:https://www.python.org/ ...
- 34. 在排序数组中查找元素的第一个和最后一个位置给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标
34. 在排序数组中查找元素的第一个和最后一个位置 难度中等2012 给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target.请你找出给定目标值在数组中的开始位置和结束位置. 如果 ...
- 7-21 求特殊方程的正整数解 (C语言)
7-21 求特殊方程的正整数解 (15 分)本题要求对任意给定的正整数N,求方程X2+Y2=N的全部正整数解. 输入格式: 输入在一行中给出正整数N(≤10000). 输出格式: 输出方程 ...
- 用Python解“求特殊方程得正整数解”题
7-21 求特殊方程的正整数解 (15分) 本题要求对任意给定的正整数N,求方程X** 2+Y**2=N的全部正整数解. 输入格式: 输入在一行中给出正整数N(≤10000). 输出格式: 输出方程X ...
最新文章
- 卷积神经网络(CNN)代码实现(MNIST)解析
- 美媒:中国大陆最火的工作,教人工智能识图
- 解决“Failure to find com.oracle:ojdbc6:jar”,手动安装ojdbc的jar包到maven私仓
- mysql5.7.11 linux_CentOS 7 中以命令行方式安装 MySQL 5.7.11 for Linux Generic 二进制版本教程详解...
- 4 种最令人讨厌的编程语言:Java、C++ 上榜
- python实现实例_Python 练习实例65
- 了解PHP中$_SERVER变量对路径的解析
- Android APP 设计说明书模板
- 抖音敏感词归类,抖音都有哪些违规词,违规行为。
- tplink显示网络连接已断开_解决tplink路由器断网的问题
- 计算机系单身率排行榜,2020中国高校单身率排行榜出炉!附:单身率特别高的专业...
- Springboot集合POI导出多sheet的Excel表格
- AI教程:自定义参考线
- 编译原理实验二 自上而下语法分析
- 了解CSS属性font-kerning,font-smoothing,font-variant
- 十大经典排序算法(图解与代码)——冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序、计数排序、桶排序、基数排序(Python and Java)
- 知物由学 | 再造巴别塔,我们如何进行NLP跨语言知识迁移?
- PHP搭建织梦网站,织梦官方php服务器环境DedeAMPZ安装教程
- 吊打面试官系列之:常见测试开发面试题汇总,在面试的路上,总要先下手为强。
- Django 中文文档地址
热门文章
- (附源码)计算机毕业设计SSM交通事故记录信息管理系统
- 研扬科技与微软合作开发集成Windows 10 IoT Core和RISC架构的主板
- chatroulette 与RTMFP
- 酒店餐饮管理软件怎么选择?
- {题解}[jzoj3885]【长郡NOIP2014模拟10.22】搞笑的代码
- Coreseek中文检索引擎
- 6. 表与表之间的关系
- 虚假“大数据”来自“刷阅族”
- spring boot整合Shiro实现单点登录
- 最新版mysql8.0_最新版-MySQL8.0 安装 - 改密码 之坑