首页 > 其他分享 >leetcode 29. 两数相除

leetcode 29. 两数相除

时间:2024-11-12 17:08:19浏览次数:1  
标签:return divisor MAX 29 相除 num long dividend leetcode

29. 两数相除

一、使用long类型

class Solution {
public:
    long divide2(long dividend,long divisor){
        if(dividend < 0 && divisor < 0)  return divide2(-dividend,-divisor);
        else if(dividend < 0 && divisor > 0)  return -divide2(-dividend,divisor);             
        else if(dividend > 0 && divisor < 0)  return -divide2(dividend,-divisor);
        if(divisor == 1) return dividend;
        if(dividend < divisor) return 0;
        long num = 0;
        while(dividend > 0){
            dividend -= divisor;
            num++;
        }
        if(dividend < 0)  return num-1;
        return num;
    }

    int divide(int dividend, int divisor) {
        long MAX = pow(2,31);
        long num = divide2(dividend,divisor);
        if(num > MAX-1)  return MAX-1;
        else if(num < -MAX)  return -MAX;
        return num;
    }
};

用时和消耗内存表现特别差

 

标签:return,divisor,MAX,29,相除,num,long,dividend,leetcode
From: https://www.cnblogs.com/uacs2024/p/18542294

相关文章

  • leetcode 4. 寻找两个正序数组的中位数 困难 未完全解决
    leetcode4.寻找两个正序数组的中位数一、使用额外空间,类似归并排序的做法classSolution{public:doublefindMedianSortedArrays(vector<int>&nums1,vector<int>&nums2){intm=nums1.size();intn=nums2.size();inttemp[(m+n)/2+1];//......
  • 代码随想录算法训练营第十一天|LeetCode150.逆波兰表达式求值、239.滑动窗口最大值、3
    前言打卡代码随想录算法训练营第49期第十一天 φ(゜▽゜*)♪首先十分推荐学算法的同学可以先了解一下代码随想录,可以在B站卡哥B站账号、代码随想录官方网站代码随想录了解,卡哥清晰易懂的算法教学让我直接果断关注,也十分有缘和第49期的训练营大家庭一起进步。今日题目在学......
  • 深入解析SA8295P、J5和TC397智能座舱+智能驾驶一体方案:揭开智能座舱“最强大脑”的神
    这张图展示了一个智能座舱和自动驾驶一体方案,核心芯片包括SA8295P、J5和TC397。我将详细讲解每个模块的功能、参数、选型思路,以及应用实例,帮助你更深入理解该系统的设计和实现。一、主芯片:SA8295P(信息娱乐系统+高精地图HDMap)高通SA8295P(骁龙8295)是一款专为汽车座......
  • 代码随想录算法训练营第三天(LeetCode203.移除链表元素;LeetCode707.设计链表;LeetCode20
    LeetCode203.移除链表元素题目链接:LeetCode203.移除链表元素题目链接思路这道题目主要考察的是移除一个链表当中的元素,我们可以先在给定的链表前面加一个虚拟头结点,这样我们对给定链表头结点的操作和给定链表其余结点的操作就会变得相同。代码classSolution{p......
  • 代码随想录算法训练营第四天(LeetCode24.两两交换链表中的节点;LeetCode10.删除链表的倒
    LeetCode24.两两交换链表中的节点题目链接:两两交换链表中的节点题目链接思路这道题其实就是一个模拟题,要求每次交换链表中两个相邻的节点(1、2节点互换;3、4节点互换;2、3节点不互换,意思就是交换过的节点不参与后续的交换了),同时只能进行节点交换,不能进行值交换。主要考......
  • 【MATLAB源码-第290期】基于matlab的MRC检测算法在OTFS通信系统中的仿真,输出误码率曲
    操作环境:MATLAB2022a1、算法描述在无线通信系统的发展历程中,随着频谱的日益紧张以及高频通信需求的增加,传统的通信方法逐渐显露出其在复杂信道环境中的局限性。尤其是在高速移动、多径传播和多普勒效应严重的环境下,传统的OFDM(正交频分复用)等技术往往难以应对这些挑战。因此......
  • LeetCode【0011】盛最多水的容器
    本文目录1中文题目2求解思路2.1基础解法:暴力算法2.2优化解法:分治法2.3最优解法:双指针法3题目总结1中文题目给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i,0)和(i,height[i])。找出其中的两条线,使得它们与x轴共同构成的......
  • LeetCode【0010】正则表达式匹配
    本文目录1中文题目2求解思路2.1基础解法:递归法2.2优化解法:动态规划和递归结合2.3最优解法:NFA(非确定性有限自动机)3题目总结1中文题目给一个字符串s和一个字符规律p,实现一个支持‘.’和‘*’的正则表达式匹配。‘.’匹配任意单个字符‘*’匹配零个或......
  • leetcode算法题-有效的括号(简单)
    有效的括号(简单)leetcode:https://leetcode.cn/problems/valid-parentheses/description/前言防止脑袋生锈,做一下leetcode的简单算法题,难得也做不来哈哈。大佬绕道,小白可看。题目描述给定一个只包括'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:......
  • 日常 29
    异常的分类Java中的异常可以分为两大类:已检查异常(CheckedExceptions):这些异常在编译时被检查,程序员必须在代码中显式地处理它们,例如IOException、SQLException等。如果不处理,会导致编译错误。未检查异常(UncheckedExceptions):这些异常在运行时出现,程序员可以选择不处理,例如Null......