• <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>

            Uriel's Corner

            Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
            posts - 0, comments - 50, trackbacks - 0, articles - 594
            這套題糾結了一晚上。。

            1. 質因數的個數
                這個還比較水。。
            //2007年清華大學計算機研究生機試題 質因數的個數
            #include<math.h>
            #include
            <stdio.h>
            #include
            <stdlib.h>
            #include
            <string.h>

            int main() {
                
            int n, i, cnt;
                
            while(~scanf("%d"&n)) {
                    i 
            = 2; cnt = 1;
                    
            while(i <= sqrt(n)) {
                        
            if(n % i == 0{
                            n 
            /= i;
                            cnt
            ++;
                        }

                        
            else
                            
            ++i;
                    }

                    printf(
            "%d\n", cnt);
                }

                
            return 0;
            }


            2. 10進制 VS 2進制
                這題木有什么好想法。。發現網上一位大牛http://blog.csdn.net/herechaos/article/details/5397430也是直接做的。。就直接模擬之了。。結果就是跑得暴慢。。路過的大牛有什么好想法的不吝賜教啊。。
                PS: 方法見上面鏈接的大牛Blog,不過網上這位大牛的源碼AC不能,有幾處小bug。。
            //2007年清華大學計算機研究生機試題 10進制 VS 2進制
            #include<stdio.h>
            #include
            <stdlib.h>
            #include
            <string.h>

            int b[8010], c[80100], la, lb, lc;
            char a[8010];

            void pw(int x) {
                
            int i, j, k;
                memset(c, 
            0sizeof(c));
                c[
            0= 1;
                lc 
            = 1;
                
            for(i = 0; i < x; ++i) {
                    
            for(j = 0; j < lc; ++j) c[j] *= 2;
                    
            for(k = 0; k < lc || c[k]; ++k) {
                        c[k 
            + 1+= (c[k] / 10);
                        c[k] 
            %= 10;
                    }

                    lc 
            = k;
                }

                la 
            = (lc > la ? lc : la) + 1;
                
            for(i = 0; i < la; ++i) {
                    a[i] 
            += c[i];
                    a[i 
            + 1+= (a[i] / 10);
                    a[i] 
            %= 10;
                }

            }


            void div() {
                
            int i, j, cf, st, tp;
                la 
            = strlen(a);
                
            for(i = 0; i < la; ++i) a[i] -= '0';
                st 
            = 0;
                lb 
            = 0;
                
            while(a[la - 1|| st < la) {
                    
            if(a[la - 1& 1) b[lb++= 1;
                    
            else
                        b[lb
            ++= 0;
                    cf 
            = 0;
                    
            for(j = st; j < la; ++j) {
                        tp 
            = cf * 10 + a[j];
                        a[j] 
            = tp >> 1;
                        cf 
            = tp & 1;
                    }

                    
            if(!a[st]) st++;
                }

                memset(a, 
            0sizeof(a));
                
            for(i = 0; i < lb; ++i)
                    
            if(b[i]) pw(lb - i - 1);
                
            while(!a[la - 1]) la--;
            }


            int main() {
                
            while(~scanf("%s", a)) {
                    
            if(!strcmp(a, "0")) puts("0");
                    
            else {
                        div();
                        
            for(int i = la - 1; i >= 0--i) printf("%d", a[i]);
                        puts(
            "");
                    }

                }

                
            return 0;
            }


            3. 最小郵票數
                01背包。。一開始NC忘記判輸出0的情況了。。WA*n
            //2007年清華大學計算機研究生機試題 最小郵票數
            #include<stdio.h>
            #include
            <stdlib.h>
            #include
            <string.h>
            #include
            <algorithm>
            using namespace std;
            #define INF 0x3f3f3f3f

            int n, m, dp[1000], w[100];

            int main() {
                
            int i, j;
                
            while(~scanf("%d"&m)) {
                    scanf(
            "%d"&n);
                    
            for(i = 0; i < n; ++i) scanf("%d"&w[i]);
                    
            for(i = 1; i <= m; ++i) dp[i] = INF;
                    dp[
            0= 0;
                    
            for(i = 0; i < n; ++i) {
                        
            for(j = m; j >= w[i]; --j) {
                            
            if(dp[j - w[i]] == INF) continue;
                            
            else
                                dp[j] 
            = min(dp[j], dp[j - w[i]] + 1);
                        }

                    }

                    
            if(dp[m] == INF) puts("0");
                    
            else
                        printf(
            "%d\n", dp[m]);
                }

                
            return 0;
            }

            Feedback

            # re: 清華大學計算機研究生機試題-2007年[未登錄]  回復  更多評論   

            2012-02-19 22:45 by lau
            第一個你貌似跑的話會超時。你可以嘗試一下

            # re: 清華大學計算機研究生機試題-2007年  回復  更多評論   

            2012-02-19 23:13 by Uriel
            @lau
            嘗試又交了一次,10ms AC(九度OJ)
            不過我這個確實是過于偷懶,暴力了。。= =||
            有更快的方法分解質因數,我也沒太搞過。。
            国产婷婷成人久久Av免费高清| 久久天天躁狠狠躁夜夜avapp| 99久久国产热无码精品免费| 国内精品久久久久久99| 91久久香蕉国产熟女线看| 亚洲国产成人久久综合野外| 亚洲色欲久久久综合网东京热| 精品国际久久久久999波多野| AA级片免费看视频久久| 麻豆AV一区二区三区久久| 99久久精品国产毛片| 无码国内精品久久人妻蜜桃| 亚洲国产精品久久| 久久人爽人人爽人人片AV| 欧美日韩中文字幕久久久不卡| 亚洲午夜久久久影院| 人人狠狠综合88综合久久| 久久精品国产91久久麻豆自制 | 韩国无遮挡三级久久| 亚洲国产成人久久笫一页| 色综合久久久久| 久久精品国产亚洲av高清漫画| 色青青草原桃花久久综合| 国产高潮久久免费观看| 亚洲国产精品久久久久| 国产精品久久久久久影院| 午夜天堂av天堂久久久| 97精品依人久久久大香线蕉97| 香港aa三级久久三级| 久久精品草草草| 久久综合九色综合精品| 93精91精品国产综合久久香蕉| 99久久99久久精品免费看蜜桃| 亚洲精品国产美女久久久| 麻豆av久久av盛宴av| 久久91精品国产91久| 99久久国产精品免费一区二区| 狠狠色丁香久久婷婷综合图片| 性做久久久久久久久浪潮| av色综合久久天堂av色综合在 | 成人精品一区二区久久久|