1726。与同一产品的元组
难度:中等
>主题:数组,哈希表,计数
给定一个不同的阵列,正整数,返回
>输入:
(2,6,3,4) , (2,6,4,3) , (6,2,3,4) , (6,2,4,3) (3,4,2,6) , (4,3,2,6) , (3,4,6,2) , (4,3,6,2)
>输入: nums = [1,2,4,5,10]
(1,10,2,5) , (1,10,5,2) , (10,1,2,5) , (10,1,5,2) (2,5,1,10) , (2,5,10,1) , (5,2,1,10) , (5,2,10,1) (2,10,4,5) , (2,10,5,4) , (10,2,4,5) , (10,2,5,4) (4,5,2,10) , (4,5,10,2) , (5,4,2,10) , (5,4,10,2)
1 1 num中的所有元素均为
解决方案:
我们需要从给定的一系列不同的正整数中确定有效元素的数量(a,b,c,d),以使a和b的乘积等于c和d的乘积,所有四个元素是不同的。:计算阵列中所有不同元素的所有可能对的产物。这有助于我们确定可以通过不同对元素形成哪些产品。>
计数产品频率:使用哈希映射计算每种产品出现多少次。哈希地图中的每个键都是产品,值是产生此产品的不同对的数量。
<?php /** * @param Integer[] $nums * @return Integer */ function tupleSameProduct($nums) { ... ... ... /** * go to ./solution.php */ } // Example 1 $nums1 = [2, 3, 4, 6]; echo "Output: " . tupleSameProduct($nums1) . "\n"; // Output: 8 // Example 2 $nums2 = [1, 2, 4, 5, 10]; echo "Output: " . tupleSameProduct($nums2) . "\n"; // Output: 16 ?>
计算有效的元素:对于至少两次出现两次的每个产品,我们使用公式
4×k×(k -1)
以上就是与同一产品的元组的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号