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

            飛天

            快樂的生活......

             

            [ACM 1002] 數字游戲

            數字游戲
            Time Limit:1000MS  Memory Limit:1024K

            Description:

            最近Catcher對數字游戲很感興趣,他發明了一種新的游戲,給出一個數N,問N是否能表示成某個正整數X的K次冪(K>1),N可能有多種表示方法,請找出最大的X并輸出相應的K。例如 16=2^4=4^2,64=4^3=2^6=8^2則16應表示為4^2,64應表示為8^2。

            Input:

            每行一個正整數N,輸入文件以0為結束標志。(0<N<10^8)

            Output:

            每行有兩個整數,如果能表示,則輸出X K,(中間用一個空格隔開)如果不能,則輸出0 0;

            Sample Input:

            5
            4
            16
            27
            0
            

            Sample Output:

            0 0
            2 2
            4 2
            3 3
            

            Source:

            Jin Qiwei
            /*
            **    Author    :flysky
            **  date    :2008-01-20    
            **    Description: 
            http://acm.zjut.edu.cn/ShowProblem.aspx?ShowID=1002
            */

            #include 
            <iostream>
            #include 
            <math.h>
            using namespace std;

            #define MAX 50

            void solve(int number)
            {
                
            int k=sqrt(number);
                
            for(int i=k;i>1;--i)
                
            {
                    
            int j=2;
                    
            bool loop=true;
                    
            while(loop)
                    
            {
                        
            if(pow(i,j)==number)
                        
            {
                            cout
            <<i<<" "<<j<<endl;
                            
            return;
                        }

                        
            else if(pow(i,j)>number)
                            loop
            =false;
                        
            else
                            j
            ++;
                    }

                }

                cout
            <<0<<" "<<0<<endl;
            }


            int main()
            {
                
            int input[MAX];
                
            int len=0;
                
            while((cin>>input[len])&&input[len]!=0)
                
            {
                    
            if(input[len]<0||input[len]>pow(10,8))
                        
            continue;
                    len
            ++;
                }

                
            for(int i=0;i<len;++i)
                    solve(input[i]);
                
            return 0;
            }

            posted on 2008-01-20 13:30 飛天 閱讀(1607) 評論(2)  編輯 收藏 引用 所屬分類: ACM

            評論

            # re: [ACM 1002] 數字游戲 2008-08-23 11:03 dengxp

            為什么我提交總是通不過,下面是錯誤提示


            (9) : error C2668: “sqrt”: 對重載函數的調用不明確
            VC8\include\math.h(581): 可能是“long double sqrt(long double)”
            VC8\include\math.h(533): 或“float sqrt(float)”
            VC8\include\math.h(128): 或“double sqrt(double)”
            試圖匹配參數列表“(int)”時
            (16) : error C2668: “pow”: 對重載函數的調用不明確
            VC8\include\math.h(575): 可能是“long double pow(long double,int)”
            VC8\include\math.h(527): 或“float pow(float,int)”
            VC8\include\math.h(489): 或“double pow(double,int)”
            試圖匹配參數列表“(int, int)”時
            (21) : error C2668: “pow”: 對重載函數的調用不明確
            VC8\include\math.h(575): 可能是“long double pow(long double,int)”
            VC8\include\math.h(527): 或“float pow(float,int)”
            VC8\include\math.h(489): 或“double pow(double,int)”
            試圖匹配參數列表“(int, int)”時
            (36) : error C2668: “pow”: 對重載函數的調用不明確
            VC8\include\math.h(575): 可能是“long double pow(long double,int)”
            VC8\include\math.h(527): 或“float pow(float,int)”
            VC8\include\math.h(489): 或“double pow(double,int)”
            試圖匹配參數列表“(int, int)”時
              回復  更多評論   

            # re: [ACM 1002] 數字游戲 2008-08-25 09:29 飛天

            @dengxp
            以上程序是在Dev C++ 4.9.9.2上編譯。
            在vs2005里sqrt,pow找不到對應的重載函數,所以要修改一下:
            #include "stdafx.h"


            #include <iostream>
            #include <math.h>
            using namespace std;

            #define MAX 50

            void solve(int number)
            {
            int k=sqrt((float)number);
            for(int i=k;i>1;--i)
            {
            int j=2;
            bool loop=true;
            while(loop)
            {
            if(pow((float)i,j)==number)
            {
            cout<<i<<" "<<j<<endl;
            return;
            }
            else if(pow((float)i,j)>number)
            loop=false;
            else
            j++;
            }
            }
            cout<<0<<" "<<0<<endl;
            }

            int main()
            {
            int input[MAX];
            int len=0;
            while((cin>>input[len])&&input[len]!=0)
            {
            if(input[len]<0||input[len]>pow(10.0,8))
            continue;
            len++;
            }
            for(int i=0;i<len;++i)
            solve(input[i]);
            return 0;
            }  回復  更多評論   

            導航

            統計

            常用鏈接

            留言簿(2)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            Blogs

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲午夜久久久影院| 精品久久久久久无码中文字幕 | 精品人妻久久久久久888| 亚洲国产成人久久综合碰| 国产精品久久久久一区二区三区 | 狠狠狠色丁香婷婷综合久久俺| 无码任你躁久久久久久老妇App| 久久久久亚洲AV成人网| 国产福利电影一区二区三区久久久久成人精品综合| 亚洲精品乱码久久久久久蜜桃不卡| 精品熟女少妇AV免费久久| 久久国产亚洲精品| 亚洲人成网亚洲欧洲无码久久| 国内精品久久久久影院薰衣草| 亚洲国产精品18久久久久久| 久久精品人人做人人妻人人玩| 97久久天天综合色天天综合色hd| 97精品伊人久久大香线蕉app| 久久er国产精品免费观看2| 久久精品国产亚洲Aⅴ蜜臀色欲| 国产成人久久精品二区三区| 久久无码人妻精品一区二区三区 | 国产精品18久久久久久vr| 久久国产乱子伦精品免费强| 99久久精品九九亚洲精品| 国内精品久久久久影院亚洲| 男女久久久国产一区二区三区| 久久97精品久久久久久久不卡| 国产精久久一区二区三区| 久久久久久曰本AV免费免费| 色综合久久最新中文字幕| 亚洲国产成人久久一区久久| 97久久久精品综合88久久| 亚洲国产精品嫩草影院久久| 久久久久亚洲AV成人片| 久久久91人妻无码精品蜜桃HD| 99久久无色码中文字幕人妻| 一本色道久久88加勒比—综合| 久久精品aⅴ无码中文字字幕不卡| 久久香蕉国产线看观看99| 一本一本久久A久久综合精品|