Reverse Integer

想用余10直接算,没想到

-123%107, 原因 -123-(-123//10*10)

  1. r=a-n*[a/n]
  2. 以上,r是余数,a是被除数,n是除数。
  3. 唯一不同点,就是商向0或负无穷方向取整的选择,cc99开始规定向0取整,python则规定向负无穷取整,选择而已。
  4. 所以套用上述公式为:
  5. C 语言:(a%n的符号与a相同)
  6. -9%7=-9 - 7*[-1]=-2
  7. 9%-7=9 - -7*[-1]=2;
  8. Python语言::(a%n的符号与n相同)
  9. -9%7=-9 - 7*[-2]=5
  10. 9%-7=-9 - -7*[-2]=-5

by 负数求余,Python和C语言的不同

所以直接存符号吧。

第1次提交
  1. import time
  2. class Solution:
  3. def __init__(self):
  4. self.maxValue=2**31-1
  5. self.minValue=-2**31
  6. def reverse(self, x):
  7. """
  8. :type x: int
  9. :rtype: int
  10. """
  11. reverseInt=0
  12. flag=1
  13. if x<0:
  14. flag=-1
  15. x=abs(x)
  16. i=0
  17. while x>=1:
  18. reverseInt*=10
  19. reverseInt+=x%10
  20. x//=10
  21. i+=1
  22. #print(reverseInt,x)
  23. reverseInt*=flag
  24. if reverseInt>self.maxValue or reverseInt<self.minValue:
  25. reverseInt=0
  26. return reverseInt
  27. if __name__ == "__main__":
  28. data = [
  29. {
  30. "input":123,
  31. "output":321,
  32. },
  33. {
  34. "input":-123,
  35. "output":-321,
  36. },
  37. {
  38. "input":120,
  39. "output":21,
  40. }
  41. ];
  42. for d in data:
  43. print(d['input'])
  44. # 计算运行时间
  45. start = time.perf_counter()
  46. result=Solution().reverse(d['input'])
  47. end = time.perf_counter()
  48. print(result)
  49. if result==d['output']:
  50. print("--- ok ---",end="\t")
  51. else:
  52. print("--- error ---",end="\t")
  53. print(start-end)

一次AC,题太简单,没有什么感觉:)

LeetCode 7 Reverse Integer & int的更多相关文章

  1. LeetCode 7 Reverse Integer int:2147483647-2147483648 难度:2

    https://leetcode.com/problems/reverse-integer/ class Solution { public: int inf = ~0u >> 1; in ...

  2. LeetCode 7 Reverse Integer(反转数字)

    题目来源:https://leetcode.com/problems/reverse-integer/ Reverse digits of an integer. Example1: x = 123, ...

  3. leetcode:Reverse Integer 及Palindrome Number

    Reverse Integer Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, retur ...

  4. Leetcode 7. Reverse Integer(水)

    7. Reverse Integer Easy Given a 32-bit signed integer, reverse digits of an integer. Example 1: Inpu ...

  5. leetcode:Reverse Integer(一个整数反序输出)

    Question:Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 ...

  6. [LeetCode][Python]Reverse Integer

    # -*- coding: utf8 -*-'''__author__ = 'dabay.wang@gmail.com'https://oj.leetcode.com/problems/reverse ...

  7. 【LeetCode】Reverse Integer(整数反转)

    这道题是LeetCode里的第7道题. 题目描述: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1: 输入: 123 输出: 321  示例 2: 输入: -123 ...

  8. LeetCode 7. Reverse Integer (倒转数字)

    Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: 321 Examp ...

  9. [LeetCode] 7. Reverse Integer 翻转整数

    Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123 Output: 321 Examp ...

随机推荐

  1. PHP 解压 ZIP 文件到指定文件夹

    本类实现参考 php manual 评论 [php] view plain copy /** * function: 解压zip 格式的文件 * author:friker * date:2015-1 ...

  2. 外同步信号检测---verilog---状态机

    外同步信号检测---verilog---状态机 `timescale 1ns / 1ps /////////////////////////////////////////////////////// ...

  3. 黄聪:VS2017调试时提示“运行时无法计算表达式的值”

    具体操作: 工具-选项-调试-常规,选中“使用托管兼容模式”,问题解决

  4. SQL判断某列中是否包含中文字符或者英文字符

    SQL判断某列中是否包含中文字符或者英文字符   [sql]  select * from 表名 where 某列 like '%[吖-座]%'     select * from 表名 where ...

  5. java中的自定义注解的使用

    https://www.cnblogs.com/acm-bingzi/p/javaAnnotation.html

  6. TweenMax 参考

    http://bbs.9ria.com/thread-214959-1-1.html TweenMax 可能是很多人都用的,包括我 但 是最近发现大量的运用就总会产生这样或那样的"怪事&qu ...

  7. Ubuntu 14.10 下ZooKeeper+Hadoop2.6.0+HBase1.0.0 的HA机群高可用配置

    1 硬件环境 Ubuntu 14.10 64位 2 软件环境 openjdk-7-jdk hadoop 2.6.0 zookeeper-3.4.6 hbase-1.0.0 3 机群规划 3.1 zoo ...

  8. 使用Apache Mesos和Consul实现服务的注册发现

    为保证基于Docker应用程序和服务都具有高性能和可用性,设计出一种具有服务发现,高可用性和容错能力的解决方案非常重要. 我们使用Apache Mesos 和Mesosphere的 Marathon实 ...

  9. i++ 和 ++i的字节码指令

    代码 public class Test{ public static void main(String args[]){ int i=0;i=i++; System.out.println(i);} ...

  10. [UE4]使用另一个相机Scene Capture Component 2D当小地图

    挂一个相机(Scene Capture Component 2D)在人物角色的正上方,相机朝下,让UI上的某一块区域看到相机所显示的内容. 一.在人物角色正上方添加相机组件Scene Capture ...