纯真的模拟题,也就是对于数字变成string类型,然后再对于string类型转变为int的操作而已。
思路:我们可以先把每个数组元素中的数字转变成字符串,然后再对于字符串进行排序,这样我们就知道最大的那个字符其实就是最大数字了,然后再把全部字符变成最后最大的字符,然后用字符串流istringstream进行转变数字的操作。
上代码:
class Solution {
public:
int sumOfEncryptedInt(vector<int>& nums) {
int n=nums.size();
int sum=0;
for(int i=0;i<n;i++){
int num=nums[i];
string buf=to_string(num);
sort(buf.begin(),buf.end());
for(int j=0;j<buf.size()-1;j++)
buf[j]=buf[buf.size()-1];
istringstream ss(buf);
int tmp;
ss>>tmp;
sum+=tmp;
}
return sum;
}
};