• <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>
            心如止水
            Je n'ai pas le temps
            posts - 400,comments - 130,trackbacks - 0
            題目大意是給出一個(gè)K和L,求在[2, L)范圍內(nèi)有沒有整數(shù)能整除K。
            K很大,L<=10^6。
            一開始我預(yù)處理了素?cái)?shù)表,然后枚舉[2, L)以內(nèi)的素?cái)?shù),用大整數(shù)求余的方法判斷是不是K的質(zhì)因子,TLE。
            將K改為萬進(jìn)制,溢出,WA。
            改成千進(jìn)制即可AC。
            以下是我的代碼:
            /*
             * Author:  lee1r
             * Created Time:  2011/8/25 10:29:17
             * File Name: poj2635.cpp
             
            */
            #include
            <iostream>
            #include
            <sstream>
            #include
            <fstream>
            #include
            <vector>
            #include
            <list>
            #include
            <deque>
            #include
            <queue>
            #include
            <stack>
            #include
            <map>
            #include
            <set>
            #include
            <bitset>
            #include
            <algorithm>
            #include
            <cstdio>
            #include
            <cstdlib>
            #include
            <cstring>
            #include
            <cctype>
            #include
            <cmath>
            #include
            <ctime>
            #define L(x) ((x)<<1)
            #define R(x) ((x)<<1|1)
            #define Half(x) ((x)>>1)
            #define Lowbit(x) ((x)&(-(x)))
            using namespace std;
            const int kInf(0x7f7f7f7f);
            const double kEps(1e-8);
            typedef unsigned 
            int uint;
            typedef 
            long long int64;
            typedef unsigned 
            long long uint64;

            bool scanf(int &num)
            {
                
            char in;
                
            while((in=getchar())!=EOF && (in>'9' || in<'0'));
                
            if(in==EOF) return false;
                num
            =in-'0';
                
            while(in=getchar(),in>='0' && in<='9') num*=10,num+=in-'0';
                
            return true;
            }

            const int kMaxn(1100000);

            int cnt,Prime[kMaxn+7];
            bool isPrime[kMaxn+7];

            void GetPrime()
            {
                cnt
            =0;
                
            for(int i=1;i<=kMaxn;i++)
                    isPrime[i]
            =true;
                
            for(int i=2;i<=kMaxn;i++)
                {
                    
            if(isPrime[i])
                        Prime[
            ++cnt]=i;
                    
            for(int j=1;j<=cnt && i*Prime[j]<=kMaxn;j++)
                    {
                        isPrime[i
            *Prime[j]]=false;
                        
            if(i%Prime[j]==0)
                            
            break;
                    }
                }
            }

            int Mod(int *a,int n,const int L)
            {
                
            int re(0);
                
            for(int i=1;i<=n;i++)
                    re
            =(re*1000+a[i]%L)%L;
                
            return re;
            }

            int main()
            {
                GetPrime();
                
                
            string S;
                
            int a[100],n;
                
            int L;
                
            while(cin>>S>>&& (S!="0" || L))
                {
                    n
            =0;
                    
            if(S.size()%3)
                    {
                        n
            ++;
                        a[n]
            =0;
                        
            for(int i=0;i<S.size()%3;i++)
                            a[n]
            =a[n]*10+S[i]-'0';
                    }
                    
            for(int i=S.size()%3;i<S.size();i+=3)
                    {
                        n
            ++;
                        a[n]
            =0;
                        
            for(int j=i;j<i+3;j++)
                            a[n]
            =a[n]*10+S[j]-'0';
                    }
                    
                    
            int ans(-1);
                    
            for(int i=1;Prime[i]<L;i++)
                        
            if(Mod(a,n,Prime[i])==0)
                        {
                            ans
            =Prime[i];
                            
            break;
                        }
                    
            if(ans==-1)
                        printf(
            "GOOD\n");
                    
            else
                        printf(
            "BAD %d\n",ans);
                }
                
                
            return 0;
            }
            posted on 2011-08-25 11:12 lee1r 閱讀(361) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:數(shù)學(xué)/數(shù)論
            色综合久久综精品| 女人高潮久久久叫人喷水| 一本色道久久88精品综合| 久久国产香蕉一区精品| 国产激情久久久久影院| 久久精品国产99久久丝袜| 99久久人人爽亚洲精品美女| 国内精品久久久久国产盗摄| 少妇熟女久久综合网色欲| 午夜久久久久久禁播电影| 久久婷婷久久一区二区三区| 久久精品亚洲男人的天堂| 久久久久99精品成人片三人毛片| 久久久久一级精品亚洲国产成人综合AV区 | 久久99精品久久久久久久久久| AV色综合久久天堂AV色综合在 | 久久91精品国产91| 欧美与黑人午夜性猛交久久久| 久久强奷乱码老熟女| 精品国产乱码久久久久久郑州公司| 久久久久久国产a免费观看不卡| 国内精品九九久久精品| 欧美日韩精品久久久免费观看| 国产精品久久久亚洲| 日韩乱码人妻无码中文字幕久久| 久久人妻少妇嫩草AV蜜桃| 91久久精品视频| 99久久亚洲综合精品网站| 精品久久久久久久无码 | 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 久久久久久久久久久精品尤物 | 久久激情五月丁香伊人| 久久香蕉国产线看观看乱码| 久久久久亚洲AV无码专区体验| 久久人做人爽一区二区三区| 久久综合亚洲鲁鲁五月天| 一本色道久久88综合日韩精品 | 伊人久久综合无码成人网| 欧美亚洲国产精品久久| 久久99精品久久久久子伦| 成人国内精品久久久久影院VR|