時間限制:1秒
空間限制:32768k
題目描述
#include
using
namespace
std;
class solution
//求之前的length-1位中含乙個數
int base1=0;
int base2=1;
for(int i=0;i1;i++)
//cout/cout/cout/求從base2開始到n中1的個數,分別從低位到高位開始取數
temp1=n;
int temp2=n;
int base3=base1;
base1=10;
base2=1;
for(int i=1; i<=length; i++)
else
break;
}if(temp2==1)
base1=base1*10;
base2=base2*10;
//cout
//cout
return numof1;
}};//方法1:不考慮時間效率
//class solution
// }
// return numof1;
// }
// int fun(int t)
//
// /*if(t==1)
// num++;*/
// return num;
// }
//};
//測試用例55,輸出16
//21345,輸出18821,錯誤18763
int main()
說明:
1. **未經過優化。
思路參考:
這裡寫鏈結內容
2. 劍指offer上有遞迴解法。
牛客網通過:
整數中1出現的次數(從1到n整數中1出現的次數)
求出1 13的整數中1出現的次數,並算出100 1300的整數中1出現的次數?為此他特別數了一下1 13中包含1的數字有1 10 11 12 13因此共出現6次,但是對於後面問題他就沒轍了。acmer希望你們幫幫他,並把問題更加普遍化,可以很快的求出任意非負整數區間中1出現的次數。include u...
整數中1出現的次數(從1到n整數中1出現的次數)
求出1 13的整數中1出現的次數,並算出100 1300的整數中1出現的次數?為此他特別數了一下1 13中包含1的數字有1 10 11 12 13因此共出現6次,但是對於後面問題他就沒轍了。acmer希望你們幫幫他,並把問題更加普遍化,可以很快的求出任意非負整數區間中1出現的次數。演算法一 暴力累加...
整數中1出現的次數(從1到n整數中1出現的次數)
題目描述 求出1 13的整數中1出現的次數,並算出100 1300的整數中1出現的次數?為此他特別數了一下1 13中包含1的數字有1 10 11 12 13因此共出現6次,但是對於後面問題他就沒轍了。acmer希望你們幫幫他,並把問題更加普遍化,可以很快的求出任意非負整數區間中1出現的次數。解題思路...