C++ 0LL
C plus plus
L / l means long
LL === long long
int countDigitOne(int n) {
int countr = 0;
for (long long i = 1; i <= n; i *= 10) {
long long divider = i * 10;
countr += (n / divider) * i + min(max(n % divider - i + 1, 0LL), i);
}
return countr;
}
LeetCode
/**
* @param {number} n
* @return {number}
*/
var countDigitOne = function(n) {
let count = 0;
for (let i = 1; i <= n; i *= 10) {
let divider = i * 10;
count += ((n / divider) * i) + Math.min(Math.max(n % divider - i + 1, 0), i);
}
return count;
};
https://leetcode.com/problems/number-of-digit-one/solution/
refs
https://stackoverflow.com/questions/7036056/what-do-0ll-or-0x0ul-mean
©xgqfrms 2012-2020
www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
原文链接: https://www.cnblogs.com/xgqfrms/p/13675927.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/202805
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!