算法

您所在的位置:网站首页 找java出一个数字最长的字符串 算法

算法

2024-07-02 02:04| 来源: 网络整理| 查看: 265

秒杀系统设计

qwmwysr: 【完整版105讲,附源码+课件】秒杀系统企业级实战应用(真实工业界案例) 下载地址:https://download.csdn.net/download/haoyunqilai/48224076

算法---1~n中1出现的次数

LZ_Hon: 这个思路看可以不

算法---1~n中1出现的次数

LZ_Hon: 迭代拆分最高位和剩余位数,例如43023。 先拆分40000+3023,算出40000以内的数包含多少个1;(如果上一高位为1,则需要加40000个1,但上一高位是0,即上一高位小于1,则不需要加40000个1,14xxxx的情况不可能出现在43023的遍历过程中),至此算完40000以下的数包含多少个1。 再拆分3000+023,算出3000以内的数包含多少个1;(如果上一高位为1,则需要加3000个1,但上一高位是4即大于1,则不需要加3000个1,1xxxx的情况已经被包含在40000中了),至此算完43000以下的数包含多少个1。 再拆分000+23,算出000以内的数包含0个1;(如果上一高位为1,则需要加000个1,但上一高位是3大于1,则不需要加000个1,41xxx的情况已经被包含在43000中了),至此算完43000以下的数包含多少个1。 再拆分20+3,算出20以内的数包含多少个1;(如果上一高位为1,则需要加20个1,但上一高位是0即小于1,则不需要加20个1,41xxx的情况已经被包含在43000中了),至此算完43020以下的数包含多少个1。 最后算出3以内的数包含多少个1;(如果上一高位为1,则需要加20个1,但上一高位是2即大于1,则不需要加3个1,43023的情况已经被包含在43023中了),至此算完43023以下的数包含多少个1。

redis设计与实现

Hi丶ImViper: 感谢博主分享,讲的挺不错,希望后面有更多的文章!欢迎回访我的博客:https://blog.csdn.net/weixin_43314519



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3