• <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)
            不過我這個確實是過于偷懶,暴力了。。= =||
            有更快的方法分解質因數,我也沒太搞過。。
            久久久久女人精品毛片| 激情五月综合综合久久69| 久久精品久久久久观看99水蜜桃| 开心久久婷婷综合中文字幕| 亚洲精品tv久久久久| 亚洲精品无码久久毛片| 久久99热这里只有精品国产| www亚洲欲色成人久久精品| 国产精品熟女福利久久AV| 国产精品gz久久久| 狠狠干狠狠久久| 久久国产精品久久精品国产| 精品国产91久久久久久久| 大蕉久久伊人中文字幕| 久久人人爽人人精品视频| 亚洲精品国产第一综合99久久| 久久久精品国产免大香伊 | 蜜桃麻豆WWW久久囤产精品| 久久天天躁狠狠躁夜夜不卡| 成人国内精品久久久久影院| 伊人久久大香线焦综合四虎| 久久露脸国产精品| 91精品国产91久久久久久青草 | 无码乱码观看精品久久| 亚洲国产精品无码久久九九| 婷婷久久五月天| 久久精品国产一区| 国产精品成人精品久久久| 一级做a爰片久久毛片免费陪| 区久久AAA片69亚洲| 国产99精品久久| 久久久久亚洲国产| 伊人久久大香线蕉av不变影院| 久久人人爽人人爽人人AV东京热| 青青草原综合久久大伊人精品| 久久99精品久久久久久9蜜桃| 久久精品国产2020| 国产精品熟女福利久久AV| 一级做a爰片久久毛片免费陪| 99精品久久精品| 久久国产精品一国产精品金尊|