国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

51Nod 1009 數(shù)字1的數(shù)量 (數(shù)學

2019-11-14 09:53:59
字體:
來源:轉載
供稿:網(wǎng)友

1009 數(shù)字1的數(shù)量

基準時間限制:1 秒 空間限制:131072 KB 分值: 5 難度:1級算法題 收藏 關注 給定一個十進制正整數(shù)N,寫下從1開始,到N的所有正數(shù),計算出其中出現(xiàn)所有1的個數(shù)。 例如:n = 12,包含了5個1。1,10,12共包含3個1,11包含2個1,總共5個1。 Input

輸入N(1 <= N <= 10^9)

Output

輸出包含1的個數(shù)

Input示例

12

Output示例

5

直接上結論。

一個數(shù)的一個位數(shù)如果是0,則1的個數(shù)為這個數(shù)的高位*位數(shù)如果是1則是這個數(shù)的低位再加一加上高位*位數(shù)大于1則是(高位+1)*位數(shù)

#include<stdio.h>#define LL long longint main(){ int n; while(~scanf("%d",&n)) { int i = 1; LL k = 0; while(n >= i) { k += n/(10*i) * i; if((n/i%10) > 1) { k += i; } if((n/i%10) == 1) { k += n%i + 1; } i *= 10; }
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 阳新县| 泸西县| 葫芦岛市| 青海省| 湖北省| 宜兰县| 阿克| 华蓥市| 无锡市| 陵川县| 瑞金市| 科技| 武平县| 乐昌市| 蓝田县| 拉孜县| 水城县| 城口县| 灵宝市| 丹江口市| 新沂市| 威宁| 民权县| 忻州市| 乡宁县| 文登市| 攀枝花市| 永年县| 台中市| 灵石县| 新绛县| 抚宁县| 三江| 静乐县| 青铜峡市| 读书| 巴彦淖尔市| 杭州市| 镇安县| 故城县| 孟津县|