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

bon

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  46 Posts :: 0 Stories :: 12 Comments :: 0 Trackbacks

常用鏈接

留言簿(2)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

這道題從Ac人數以及題目大意上看應屬于簡單題,但是我卻做了好多天 ToT。

剛剛才看了一篇解題報告得到啟發過的。題目有點tricky,給一個小于等于2^20的數,本質上要求質因子分解。

題目有接近1/3的提交是超時,其實分解質因子以及后面的計算沒什么可說的,主要是求素數表這里會超時。

如果將2到2^20的所有素數打出來,程序長度超過可以提交的限制。如果打一部分,接著在程序里接著算也可以,不過
如果對質因子的上界估計不好的話,也要超時或導致效率低。

最小上界(上確界)是2^10,因為對于a<=2^20最多只有1個質因子會超過2^10,這用反證法很容易得到。因此我們只要算出1024以內
的172個素數即可,程序很快就跑完了。

另外打素數表的時候有一種比較快的算法,雖然只是在樸素算法基礎上做了一些小的優化,不過即使在打1024以內素數表就可以體現出
優越性了(69ms VS 79ms),對于更大的素數表,優越性會更明顯。

 1 // pku 3421 給一個整數X,求X的分解。1=X0,X1,X2,,Xm=X,其中Xi整除X(i+1)且Xi<X(i+1),要求最大的m跟有多少種這樣長度的鏈。
 2 // 算法:因為m要最大,所以每次Xi只能乘以一個質因子。若不然可以得到一個更短的鏈。
 3 // 先求出所有的質因子,所有質因子的排列除以重復的次數就是這種鏈的個數. 
 4 
 5 #include <iostream>
 6 #include <math.h>
 7 
 8 using namespace std;
 9 
10 __int64 p[172];
11 // 因子數目最多是20個
12 int e[21];
13 int cnt;
14 __int64 factor[21];
15 
16 // naive method
17 void prime2()
18 {
19     int i,j,k,flag;
20     p[0]=2;
21     cnt=1;
22     for(i=3;i<1024;i++){
23         flag=0;
24         j=sqrt(1.0*i);
25 
26         for(k=2;k<=j;k++){
27             if(i%k==0) {flag=1;break;}
28         }
29         if(!flag) p[cnt++]=i;
30     }
31 }
32 
33 void prime()
34 {
35     int i,j,flag;
36     p[0]=2;
37     p[1]=3;
38     cnt=2;
39     for(i=5;i<=1024;i+=2){
40         flag=0;
41         for(j=1;p[j]*p[j]<=i;j++){
42             if(i%p[j]==0) {flag=1;break;}
43         }
44         if(!flag) p[cnt++]=i;
45     }
46 }
47 
48 // 先質因子分解,再求組合的個數
49 void solve(__int64 a)
50 {
51     // j統計所有質因子的個數,k統計不同質因子個數
52     int i,j=0,flag,l=0;
53     memset(e,0,sizeof(e));
54     // 用1024以內的素數分解a,注意到a<=2^20,a最多含有一個超過1024的質因子 
55     // a=p1^e1*p2^e2**pk^ek*ps^es,其中只有ps是大于1024的素數,且es只能為0或1
56     for(i=0;i<cnt && a>1;i++){
57         flag=0;
58         while(a%p[i]==0){
59             flag=1;
60             e[l]++;
61             a/=p[i];
62             j++;
63         }
64         if(flag==1) l++;
65     }
66     // 若此時a!=1則a一定是素數
67     if(a!=1) {j++;e[l++]=1;}
68     __int64 res = factor[j];
69     for(i=0;i<l;i++){
70         if(e[i]!=0) res/=factor[e[i]];
71     }
72     printf("%d %I64d\n",j,res);
73 }
74 
75 int main()
76 {
77     prime1();
78     //cnt=172;
79     // 階乘
80     factor[0]=1;
81     for(__int64 i=1;i<21;i++) factor[i]=factor[i-1]*i;
82     __int64 a;
83     while(scanf("%I64d",&a)!=EOF){
84         solve(a);
85     }
86     
87     return 1;
88 }
89 
posted on 2008-05-06 20:11 bon 閱讀(454) 評論(0)  編輯 收藏 引用 所屬分類: Programming Contest

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


Google PageRank 
Checker - Page Rank Calculator
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久久久久9| 亚洲国产日韩欧美| 免费在线欧美黄色| 久久福利一区| 久久岛国电影| 免费黄网站欧美| 欧美黄色aaaa| 欧美午夜激情在线| 国产欧美日韩综合一区在线观看 | 欧美国产精品专区| 免费成人高清| 亚洲人精品午夜在线观看| 亚洲靠逼com| 亚洲精选一区| 亚洲一区观看| 免费在线看成人av| 国产精品高潮呻吟久久av黑人| 国产精品久久久久久久电影| 国产亚洲精品激情久久| 狠狠色综合一区二区| 亚洲精品国产欧美| 午夜激情亚洲| 欧美成在线视频| 亚洲网站视频| 欧美成人免费小视频| 国产精品视频| 亚洲精品欧美日韩专区| 久久精品久久99精品久久| 亚洲三级免费电影| 久久大逼视频| 国产精品自拍一区| 日韩一级不卡| 免费欧美在线| 亚洲一区视频在线观看视频| 欧美国产一区在线| 一区二区三区在线免费播放| 亚洲欧美日韩另类精品一区二区三区 | 亚洲综合精品一区二区| 欧美不卡一卡二卡免费版| 日韩视频在线一区| 另类人畜视频在线| 国产亚洲午夜高清国产拍精品| 欧美高清视频一区二区三区在线观看 | 亚洲一区二区在线免费观看| 欧美国产第一页| 国产色爱av资源综合区| 一区二区三区欧美成人| 欧美国产日产韩国视频| 欧美中文在线观看| 国产精品一区二区久久久久| 亚洲图片欧美一区| 亚洲精选成人| 欧美日韩国产成人在线| 亚洲日本视频| 亚洲国产精品福利| 免费观看成人| 亚洲精品在线观| 亚洲人在线视频| 欧美日本韩国一区| 一区二区日韩| 日韩视频免费观看| 欧美日韩直播| 欧美亚洲在线播放| 午夜精品久久久久久久白皮肤| 国产精品爱久久久久久久| 一区二区三区不卡视频在线观看 | 香蕉视频成人在线观看 | 亚洲永久精品大片| 国产精品久久久久91| 亚洲欧美日韩专区| 亚洲午夜精品视频| 国产精品久久久久久影院8一贰佰| 亚洲一区二区四区| 亚洲欧美日韩国产一区二区三区| 国产精品免费久久久久久| 欧美专区在线观看| 久久久噜噜噜久久人人看| 亚洲青色在线| 亚洲色在线视频| 国产一区美女| 亚洲国产成人在线播放| 欧美色综合网| 久久久久久亚洲精品不卡4k岛国| 久久人人爽人人爽| 一区二区三区三区在线| 亚洲在线电影| 伊人成年综合电影网| 亚洲精品123区| 国产精品美女在线| 蜜桃av噜噜一区二区三区| 欧美精品99| 久久精品中文字幕免费mv| 麻豆精品国产91久久久久久| 99这里有精品| 久久精品国产视频| 午夜在线播放视频欧美| 欧美综合第一页| 免费观看欧美在线视频的网站| 99这里有精品| 欧美中文字幕在线| 艳女tv在线观看国产一区| 欧美中文字幕第一页| 亚洲一区www| 欧美gay视频激情| 欧美在线高清视频| 欧美日韩国产成人| 免费亚洲一区二区| 国产精品国产三级国产aⅴ无密码| 久久久91精品国产一区二区精品| 欧美国产综合视频| 老妇喷水一区二区三区| 欧美三级不卡| 亚洲国产另类 国产精品国产免费| 国产精品久久一区主播| 91久久精品日日躁夜夜躁欧美 | 国内精品久久久久久久影视麻豆| 亚洲人成7777| 亚洲国产成人久久| 欧美亚洲一区二区三区| 小处雏高清一区二区三区| 欧美女主播在线| 亚洲国产裸拍裸体视频在线观看乱了中文 | 欧美成人日韩| 韩国精品在线观看| 亚洲欧洲av一区二区| 亚洲一区二区精品| 欧美日韩另类在线| 亚洲麻豆一区| 亚洲精品激情| 美女久久网站| 欧美成人午夜77777| 国内精品伊人久久久久av一坑| 99精品热视频| 亚洲图片在区色| 国产精品成人播放| 亚洲天堂成人| 欧美一区二区成人| 国产精品一级| 欧美在线不卡| 免费成人高清视频| 亚洲免费成人| 欧美日韩一区综合| 亚洲免费在线播放| 久久影视三级福利片| 亚洲成色777777女色窝| 欧美成人午夜免费视在线看片 | 欧美影院在线播放| 久久午夜视频| 亚洲欧洲在线看| 欧美日韩精品一区二区在线播放| 亚洲国产精品va在线观看黑人| 亚洲毛片在线看| 国产精品久久婷婷六月丁香| 午夜亚洲影视| 欧美国产三区| 亚洲线精品一区二区三区八戒| 欧美视频你懂的| 香蕉久久一区二区不卡无毒影院 | 欧美专区中文字幕| 午夜精品久久久久久久99黑人| 国产精品大全| 欧美一级午夜免费电影| 欧美福利视频网站| 在线视频欧美一区| 国产欧美一区二区精品仙草咪| 欧美在现视频| 亚洲福利专区| 亚洲伊人久久综合| 精品成人免费| 一级日韩一区在线观看| 亚洲人成人一区二区三区| 欧美日韩在线免费观看| 亚洲欧美日韩国产综合在线| 欧美a级片一区| 香蕉久久精品日日躁夜夜躁| 亚洲黄色一区二区三区| 国产精品家庭影院| 裸体歌舞表演一区二区| 亚洲一区二区高清视频| 欧美国产日韩亚洲一区| 亚洲欧美美女| 亚洲三级影院| 伊人精品成人久久综合软件| 欧美午夜电影在线观看| 久热精品视频在线免费观看| 亚洲一区在线观看免费观看电影高清| 麻豆精品在线视频| 午夜精品久久久久久久男人的天堂| 尤物视频一区二区| 国产精品一区二区三区成人| 欧美理论在线播放| 你懂的视频欧美| 欧美中文字幕在线视频| 亚洲午夜激情网页| 亚洲精品自在久久| 欧美黄色影院| 欧美99久久| 麻豆乱码国产一区二区三区| 久久久综合香蕉尹人综合网| 亚洲第一狼人社区|