青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

這是《算法設計與分析》教材上的一道題,我們老師布置的第一道題。說的是統計出一本給定頁碼書中從0~9各個數字出現的次數,頁碼最高不差過10e9。
窮舉法是很容易想到的,不過當輸入過大時很耗時間。因此應該總結規律。
#include<stdio.h>
#include
<string.h>
#include
<stdlib.h>
#include
<math.h>
#define LEN 20
int bs[] = {0120300400050000600000700000080000000900000000};
int BS = 1111111111;
void StrtoNum(char *str, int *num)
{
    
int i, len;
    len 
= strlen(str);
    
*num = 0;
    
for(i = 0; i < len; i++)
        
*num = *num * 10 + str[i] - '0';
}

int Pow(int a, int b)
{
    
int i, t;
    t 
= a;
    
for(i = 0; i < b - 1; i++)
        t 
*=a;
    
return t;
}

int GetMod(int a)
{
    
return BS % Pow(10, a);
}

int main()
{
    
int i, j;
    
int nb;// now bit
    char nums[LEN];
    
int num;
    
int rs[10];// result 
    int len;
    
int mh;//most high 
    int nt;
    
while(gets(nums) != NULL)
    
{
        memset(rs, 
0sizeof(rs));
        len 
= strlen(nums);
        StrtoNum(nums, 
&num);
        
//
        
//printf("num = %d\n", num);
        
//
        mh = nums[len - 1- '0';
        
for(i = 0; i <= mh; i++)//init the lowest bit
            rs[i] = 1;
        
for( i = 1; i < len; i++)
        
{
            nb 
= len - i -1;
            mh 
= nums[nb] - '0';
            StrtoNum(
&nums[nb + 1], &nt);
            
//
            
//printf("mh = %d nt = %d\n", mh, nt);
            
//
            rs[mh] += nt + 1;//@2, mh mh
            for(j = 0; j < mh; j++)//@2 others
            {
                rs[j] 
+= Pow(10, i); 
            }

            
for(j = 0; j < 10; j++)//@1
            {
                rs[j] 
+= mh * bs[i];
            }
            
        }

        rs[
0-= GetMod(len);
        
for(i = 0; i < 10; i++)
            printf(
"%d %d\n", i, rs[i]);
    }

    
//getchar();
}

統計出只有一位數的情況是很簡單的,我們來當在統計好的一個數字前面再加上位數時統計結果會怎么增加。我們可以把這個增加的值看做兩部分,一部分是因高位增加導致地位數的取值范圍增大而導出的,另一部分是高位本身產生的。兩方面的計算都有規律可循。要特別注意0的計算。
請注意庫函數pow()的返回值為double,轉換為int時會有精度丟失(調試中的表現為無論數據多大,結果總跟標準答案相差1),因此這里特地寫了一個Pow()函數做返回值為int的乘方計算。
posted on 2012-03-08 19:38 小鼠標 閱讀(1114) 評論(0)  編輯 收藏 引用
<2012年3月>
26272829123
45678910
11121314151617
18192021222324
25262728293031
1234567

常用鏈接

隨筆分類(111)

隨筆檔案(127)

friends

最新評論

  • 1.?re: 線段樹
  • 是這個樣子的,所以在OJ有時候“卡住”了也不要太灰心,沒準真的不是自己的原因呢。
    加油,祝你好運啦!
  • --小鼠標
  • 2.?re: 線段樹
  • 對于編程競賽來說,Java所需時間一般為C/C++的兩倍。合理的競賽給Java的時間限制是給C/C++的兩倍。
  • --傷心的筆
  • 3.?re: poj1273--網絡流
  • 過來看看你。
  • --achiberx
  • 4.?re: (轉)ubuntu11.10無法啟動無線網絡的解決方法
  • 膜拜大神。。查了一個下午資料終于在這里解決了問題。。神牛說的區域賽難道是ACM區域賽。。?
  • --Hang
  • 5.?re: 快速排序、線性時間選擇
  • 博主,謝謝你的文章。你的方法可以很好的處理分區基準在數組中重復的情況,書上的方法遇到這種輸入會堆棧溢出。書上給出了解釋但給的方法貌似不簡潔。
  • --lsxqw2004

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧美精品suv| 久热精品视频在线观看| 亚洲私拍自拍| 一二三四社区欧美黄| 欧美激情一区二区在线| 亚洲精品国产系列| 欧美精品在线观看播放| 午夜综合激情| 国产欧美精品一区aⅴ影院| 国产精品乱人伦一区二区| 欧美影院成人| 亚洲精品乱码| 一区二区欧美日韩| 亚洲欧美日韩第一区| 亚洲精品视频在线| 国内精品久久久久久 | 亚洲欧美综合v| 亚洲一区影音先锋| 亚洲欧洲精品成人久久奇米网| 欧美日韩mp4| 国产亚洲在线观看| 欧美成人免费网| 久久久久久久一区二区| 亚洲人成人99网站| 国产精品a级| 欧美日韩综合另类| 久久精品国产亚洲5555| 亚洲国产高清一区| 欧美美女日韩| 美女国内精品自产拍在线播放| 99伊人成综合| 美女性感视频久久久| 久久成人18免费网站| 欧美日韩黄视频| 欧美日韩视频在线| 国产精品亚洲片夜色在线| 欧美日韩一区二区免费在线观看 | 欧美激情中文不卡| 一区二区三区视频免费在线观看 | 亚洲人成7777| 久久香蕉精品| 欧美伊人久久大香线蕉综合69| 欧美性色aⅴ视频一区日韩精品| 欧美中文字幕视频在线观看| 亚洲一区二区视频在线| 午夜视频久久久久久| 久久久视频精品| 久久久久久亚洲精品杨幂换脸| 亚洲第一页中文字幕| 国产欧美亚洲精品| 影音先锋久久资源网| 亚洲精品视频在线观看免费| 亚洲国产天堂久久综合网| 国产午夜精品视频| 国产一区二区三区在线免费观看 | 国产欧美三级| 国产精品看片你懂得| 国产精品久久久久久久久婷婷| 国产精品欧美日韩久久| 伊人狠狠色j香婷婷综合| 亚洲国产三级| 欧美一级久久久| 99视频在线观看一区三区| 欧美电影资源| 亚洲欧美在线磁力| 欧美大片免费观看| 91久久国产综合久久| 欧美国产亚洲视频| 日韩一级免费观看| 久久久久久久久久久成人| 欧美激情aaaa| 欧美日韩国语| 韩国一区二区三区美女美女秀| 99热精品在线观看| 亚洲麻豆国产自偷在线| 美女露胸一区二区三区| 国产精品毛片| 美女视频一区免费观看| 国产一区二区三区在线播放免费观看| 亚洲欧美日韩视频一区| 一区二区三区|亚洲午夜| 国产精品久久久久久久久果冻传媒 | 美女视频黄免费的久久| 黄色成人在线观看| 欧美在线免费播放| 免费日韩视频| 亚洲国产激情| 欧美精品激情在线观看| 国产日韩欧美视频| 欧美国产免费| 欧美精品乱人伦久久久久久| 午夜精品免费视频| 狂野欧美激情性xxxx欧美| 一本到12不卡视频在线dvd| 欧美一区二区福利在线| 欧美精品久久天天躁| 久久久国产一区二区| 蜜臀av一级做a爰片久久| 亚洲欧美乱综合| 欧美韩国一区| 免费成人黄色av| 国产精品免费观看视频| 欧美一区二区三区免费在线看| 久久9热精品视频| 亚洲专区一区二区三区| 久久先锋影音| 久久综合影视| 国产亚洲va综合人人澡精品| 亚洲三级免费| 欧美日精品一区视频| 欧美电影在线播放| 欧美一区在线直播| 国产精品美女久久久久aⅴ国产馆| 免费视频久久| 国产日韩在线视频| 午夜精品久久久久久| 亚洲精品一区在线| 欧美精品大片| 久久精品欧美日韩| 在线看视频不卡| 欧美精品久久久久a| 亚洲精品在线一区二区| 一区二区三区导航| 久久久国产视频91| 久久精品理论片| 欧美日韩国产综合网| 亚洲国产美女精品久久久久∴| 一区二区三区在线观看欧美 | 亚洲精品日韩激情在线电影| 亚洲黄色av一区| 韩国美女久久| 欧美日韩在线一区二区| 午夜亚洲福利| 亚洲精品日韩在线观看| 亚洲永久免费| 国产麻豆91精品| 欧美日韩免费一区二区三区| 欧美国产另类| 亚洲一区二区三区精品视频 | 日韩视频在线观看国产| 国产精品豆花视频| 亚洲一区二区三区在线| 日韩一二在线观看| 国产精品夫妻自拍| 欧美成年人视频网站| 中国日韩欧美久久久久久久久| 黑人巨大精品欧美黑白配亚洲 | 一区二区黄色| 欧美午夜无遮挡| 久久久999精品| 久久精品国产清自在天天线| 久久精品视频网| 亚洲午夜精品| 99国产精品99久久久久久粉嫩| 欧美成人国产| 亚洲三级电影全部在线观看高清| 亚洲国产日韩在线一区模特| 国产精品a久久久久| 国产精品一区二区黑丝| 欧美日韩综合久久| 国产欧美日韩伦理| 国产亚洲精品久久久久动| 国产亚洲精品久久久| 欧美成人在线免费观看| 欧美激情无毛| 国产综合自拍| 亚洲第一精品影视| 亚洲四色影视在线观看| 亚洲电影免费观看高清完整版在线观看 | 亚洲午夜女主播在线直播| 亚洲一区二区三区高清 | 欧美成人中文字幕| 亚洲视频在线视频| 欧美成年人在线观看| 久久久亚洲国产天美传媒修理工 | 亚洲一区综合| 国产精品jizz在线观看美国| 欧美中文字幕不卡| 欧美特黄视频| 亚洲第一网站免费视频| 最新国产成人在线观看| 亚洲一区二区三区精品在线观看| 美女国产精品| 欧美高清视频一区二区三区在线观看| 亚洲网站在线观看| 美女黄毛**国产精品啪啪| 伊人成人开心激情综合网| 亚洲一区二区视频| 亚洲二区视频在线| 欧美国产日产韩国视频| 欧美性开放视频| 亚洲国产婷婷| 欧美一区二区三区四区视频| 亚洲日本在线视频观看| 久久女同互慰一区二区三区| 亚洲精品国产精品久久清纯直播| 午夜精品理论片| 久久网站热最新地址| 一区二区视频免费完整版观看| 久久国产精品亚洲va麻豆|