3536. 两个数字的最大乘积(2026.07.25)

题目描述

给定一个正整数n,返回任意两位数字相乘所得的最大乘积。

注意:如果某个数字在n中出现多次,你可以多次使用该数字。

示例 1

输入:n = 31
输出:3
解释:数字为 [3, 1],最大乘积为 3 * 1 = 3。

示例 2

输入:n = 22
输出:4
解释:数字为 [2, 2],最大乘积为 2 * 2 = 4。

示例 3

输入:n = 124
输出:8
解释:数字为 [1, 2, 4],最大乘积为 2 * 4 = 8。

提示

  • 10 <= n <= 10^9

苯人思路

classSolution{public:intmaxProduct(intn){vector<int>single;while(n>0){single.emplace_back(n%10);n/=10;}sort(single.begin(),single.end());intnn=single.size();returnsingle[nn-1]*single[nn-2];}};