LeetCode3270[求出数字答案]

打印 上一主题 下一主题

主题 907|帖子 907|积分 2721

题目

链接

LeetCode3270[求出数字答案]
详情


实例

实例1


实例2


实例3


提示


题解

思路

先依次取出 num1,num2,num3 的每位的位数
  取最高位的时间,用数字除以1000,然后取10的余数
  取第三位的时间,用数字除以100,然后取10的余数
  取第二位的时间,用数字除以10,然后取10的余数
  取最低位的时间,直接取10的余数
将每一位依次传入 getMinNum 函数,输出每一位的最小值,即为 key 对应位置上的值
然后再输出 key
代码
  1. class Solution {
  2. public:
  3.     int getMinNum(char num1, char num2, char num3)//取最小值
  4.     {
  5.         char cMin = num1;
  6.         if (cMin > num2)
  7.             cMin = num2;
  8.         
  9.         if (cMin > num3)
  10.             cMin = num3;
  11.         
  12.         return cMin;
  13.     }
  14.     int generateKey(int num1, int num2, int num3) {
  15.         int key4 = getMinNum(num1 / 1000 % 10, num2 / 1000 % 10, num3 / 1000 % 10);//最高位
  16.         int key3 = getMinNum(num1 / 100 % 10, num2 / 100 % 10, num3 / 100 % 10);//第二位
  17.         int key2 = getMinNum(num1 / 10 % 10, num2 / 10 % 10, num3 / 10 % 10);//第三位
  18.         int key1 = getMinNum(num1 % 10, num2 % 10, num3 % 10);//最低位
  19.         return key4 * 1000 + key3 * 100 + key2 * 10 + key1;
  20.     }
  21. };
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

卖不甜枣

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表