頁碼數字計算

2021-06-15 07:49:26 字數 937 閱讀 5567

/**

* 問題:一本書的頁碼是從自然數1開始編碼到n的。每個頁碼沒有前導0,即第6頁編碼為6,而不是

* 06,或者006.數字計數問題的要求是對給定書的總頁碼n,計算出書的全部頁碼中分別用刀的多少次

* 0,1,……9.。1<=n<=10^9。

* 思路:對於乙個數字t(0<=t<=9),分別考慮個位、十位……到n的最高位,這些位為t的數的個數,再分

* 別加起來,就是所有頁碼中t的個數了

* 假定所有n>=1

class numbercount

} public static void test();

for(int j:n)

intcon=new int[10];

for(int k=1;k<=j;k++)

confirm(k,con);

for(int k=0;k<10;k++)

if(con[k]!=result[k])

} }public numbercount(int n)

/**獲取所有頁碼中0-9每個數字的個數*/

public intgetcount()

return arrays.copyof(result, result.length);

} private int getzerocount()else

}else

pos++;

tk*=10;

} return zeronumber;

} private int getcount(int k)else if(second>k)

}else

pos++;

tk*=10;

} return number;

} private int lengthof()

return r;

}}

讓DedeCMS的欄目頁標題顯示頁碼數

在列表頁的標題上中上頁數使列表頁的標題不重複這樣更利於優化。標籤為 例項 第頁 只適用於列表頁,且該欄目內容不止一頁的情況下,可使用版本包括dedecms v5.1至v5.6。v5.7未測試。測試過的朋友可以說下管用不。修改php的方法為 dedecms修改列表頁標題成 列表名 第xx頁 需要修改i...

解碼數字 動態規劃

題意 a用1表示,b用2表示,z用26表示 請問對給定的一串數字,說明有幾種解碼成字母的方式。例如,123可解碼成abc,lc,aw三種方式。分析 此問題有最右子問題,即如果當前位i和前一位i 1能組成小於等於26的兩位數,那麼前i個數字的解碼方式等於前i 2個數字的解碼方式加上前i 1個數字的解碼...

解碼數字序列

問題 大意 指定26個字元的編碼方式,即a對應1,b對應2,以此類推,z對應26,現出一串數字序列,問有多少種方式能對其進行解碼 實際上是乙個簡單的動態規劃,設s是我們要解碼的數字序列,令dp i 表示s i,s.length 有多少種解碼方式,則狀態方程為 if s i 0,dp i 0 else...