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

coreBugZJ

此 blog 已棄。

POJ 3604 Professor Ben

  1/*
  2POJ 3604 Professor Ben
  3
  4
  5----問題描述:
  6
  7Professor Ben is an old stubborn man teaching mathematics in a university. He likes to puzzle his students with perplexing (sometimes boring) problems. Today his task is: for a given integer N, a1,a2,  ,an are the factors of N, let bi be the number of factors of ai, your job is to find the sum of cubes of all bi. Looking at the confused faces of his students, Prof. Ben explains it with a satisfied smile:
  8
  9Let's assume N = 4. Then it has three factors 1, 2, and 4. Their numbers of factors are 1, 2 and 3 respectively. So the sum is 1 plus 8 plus 27 which equals 36. So 36 is the answer for N = 4.
 10
 11Given an integer N, your task is to find the answer.
 12
 13
 14----輸入:
 15
 16The first line contains the number the test cases, Q(1 ≤ Q ≤ 500000). Each test case contains an integer N(1 ≤ N ≤ 5000000)
 17
 18
 19----輸出:
 20
 21For each test case output the answer in a separate line.
 22
 23
 24----樣例輸入:
 25
 261
 274
 28
 29
 30----樣例輸出:
 31
 3236
 33
 34
 35----分析:
 36
 37由算術(shù)基本定理,
 38
 39設(shè) N 有 k 個質(zhì)因子 P1, P2, . , Pk
 40
 41N = P1^A1 + P2^A2 + . + Pk^Ak
 42
 43設(shè) N 有 m 個因子 F1, F2, . , Fm
 44
 45Fj = P1^B1j + P2^B2j + . + Pk^Bkj    (0 <= Bij <= Ai)
 46對任意 Fx 和 Fy,當(dāng) x != y 時,必存在 r 使 Brx != Bry
 47
 48則 Fj 的因子數(shù)
 49Sj = (1+B1j) * (1+B2j) * . * (1+Bkj)
 50
 51則最終結(jié)果
 52ANS = S1^3 + S2^3 + . + Sm^3
 53    = (1+B11)^3 * (1+B21)^3 * . * (1+Bk1)^3 + 
 54      (1+B12)^3 * (1+B22)^3 * . * (1+Bk2)^3 + 
 55      . +
 56      (1+B1m)^3 * (1+B2m)^3 * . * (1+Bkm)^3
 57      其中  Bxy = 0, 1, 2, . , Ax
 58
 59合并同類項
 60ANS = (1^3 + 2^3 + . + (1+A1)^3) * 
 61      (1^3 + 2^3 + . + (1+A2)^3) * 
 62      . * 
 63      (1^3 + 2^3 + . + (1+Ak)^3)
 64
 65*/

 66
 67
 68/**********************************************
 69版本二:
 70
 71*/

 72
 73#include <iostream>
 74#include <cstdio>
 75#include <cstring>
 76
 77using namespace std;
 78
 79typedef  __int64  Lint;
 80
 81#define  N   5000009
 82#define  RN  2240
 83
 84int nprime, prime[ RN ];
 85
 86void init() {
 87        int i, j;
 88        memset( prime, 0sizeof(prime) );
 89        nprime = 0;
 90        for ( i = 2; i < RN; ++i ) {
 91                if ( 0 == prime[ i ] ) {
 92                        prime[ nprime++ ] = i;
 93                        for ( j = i + i; j < RN; j += i ) {
 94                                prime[ j ] = 1;
 95                        }

 96                }

 97        }

 98}

 99
100// calc 1^3 + 2^3 + . + (1+a)^3
101Lint sum( int a ) {
102        Lint n = a + 1;
103        Lint h = ( (n&1? ((n+1)/2*n) : (n/2*(n+1)) );
104        return h * h;
105}

106
107Lint solve( int n ) {
108        int i = -1, p, a;
109        Lint ans = 1;
110        while ( 1 != n ) {
111                do {
112                        ++i;
113                }
 while ( (i < nprime) && (n % prime[ i ] != 0) );
114                if ( i >= nprime ) {
115                        // n 是質(zhì)數(shù)
116                        a = 1;
117                        n = 1;
118                }

119                else {
120                        a = 0;
121                        p = prime[ i ];
122                        do {
123                                ++a;
124                                n /= p;
125                        }
 while ( n % p == 0 );
126                }

127                ans *= sum( a );
128        }

129        return ans;
130}

131
132int main() {
133        int td, n;
134        init();
135        scanf( "%d"&td );
136        while ( 0 < td-- ) {
137                scanf( "%d"&n );
138                printf( "%I64d\n", solve(n) );
139        }

140        return 0;
141}

142
143
144
145/**********************************************
146版本一:
147TLE
148*/

149/*
150#include <iostream>
151#include <cstdio>
152
153using namespace std;
154
155typedef  __int64  Lint;
156
157#define  N   5000009
158#define  RN  2240
159
160void init() {
161}
162
163// calc 1^3 + 2^3 + . + (1+a)^3
164Lint sum( int a ) {
165        Lint n = a + 1;
166        Lint h = ( (n&1) ? ((n+1)/2*n) : (n/2*(n+1)) );
167        return h * h;
168}
169
170Lint solve( int n ) {
171        int p = 1, a;
172        Lint ans = 1;
173        while ( 1 != n ) {
174                do {
175                        ++p;
176                } while ( (p < RN) && (n % p != 0) );
177                if ( RN <= p ) {
178                        // n 是質(zhì)數(shù)
179                        a = 1;
180                        n = 1;
181                }
182                else {
183                        a = 0;
184                        do {
185                                ++a;
186                                n /= p;
187                        } while ( n % p == 0 );
188                }
189                ans *= sum( a );
190        }
191        return ans;
192}
193
194int main() {
195        int td, n;
196        init();
197        scanf( "%d", &td );
198        while ( 0 < td-- ) {
199                scanf( "%d", &n );
200                printf( "%I64d\n", solve(n) );
201        }
202        return 0;
203}
204*/

205

posted on 2012-06-01 21:30 coreBugZJ 閱讀(1757) 評論(1)  編輯 收藏 引用 所屬分類: ACMAlgorithmMathematics課內(nèi)作業(yè)

Feedback

# re: POJ 3604 Professor Ben 2014-02-02 12:18 kkkwjx

N = P1^A1 + P2^A2 + . + Pk^Ak
這里為什么是相加而不是相乘?  回復(fù)  更多評論   


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            午夜精品999| 久久久久五月天| 亚洲精品乱码久久久久久日本蜜臀| 欧美自拍偷拍| 影音先锋亚洲视频| 男人插女人欧美| 欧美mv日韩mv国产网站app| 亚洲电影第三页| 欧美国产精品久久| 欧美精品三区| 亚洲香蕉网站| 欧美一级淫片播放口| 伊伊综合在线| 欧美成人精品在线观看| 欧美大片在线看| 亚洲午夜精品视频| 性18欧美另类| 最新国产乱人伦偷精品免费网站 | 亚洲免费黄色| 一本色道久久88亚洲综合88| 国产精品久久久久aaaa九色| 久久精品在线观看| 美女脱光内衣内裤视频久久网站| 亚洲美女av黄| 亚洲欧美中日韩| 亚洲电影免费在线 | 一本久道久久久| 亚洲一区三区电影在线观看| 黄色成人91| aaa亚洲精品一二三区| 国产精品一区二区久久精品| 久久躁日日躁aaaaxxxx| 欧美日韩一卡二卡| 另类av一区二区| 欧美三级视频在线播放| 久久这里只精品最新地址| 欧美片在线观看| 久久五月天婷婷| 欧美日韩在线观看一区二区| 欧美+日本+国产+在线a∨观看| 欧美日韩在线一二三| 免费观看不卡av| 国产精品女人久久久久久| 欧美激情va永久在线播放| 国产女主播一区二区| 亚洲日韩第九十九页| 国产一区二区三区四区五区美女| 亚洲精品裸体| 一区二区在线观看视频| 亚洲欧美日韩高清| 一区二区三区日韩欧美精品| 久久精品亚洲精品| 亚洲在线不卡| 欧美日韩mp4| 亚洲第一区在线| 一区二区三区在线视频观看| 性欧美xxxx视频在线观看| 亚洲一区二区三区四区视频| 欧美精品精品一区| 欧美高清在线视频| 激情久久影院| 久久精品亚洲| 久久亚洲国产精品一区二区| 国产精品日韩一区二区三区| 99热免费精品在线观看| 9色porny自拍视频一区二区| 欧美福利视频网站| 亚洲国产视频一区| 日韩视频精品| 欧美美女bb生活片| 亚洲精品欧洲| 亚洲视频精选| 国产精品国产三级国产aⅴ9色| 一本久道久久综合狠狠爱| 亚洲视频在线二区| 国产精品成人aaaaa网站| 一区二区三区精品在线| 亚洲欧美国产精品桃花| 国产欧美日韩亚洲| 欧美在线免费视屏| 免费在线观看精品| 亚洲欧洲日韩在线| 欧美日韩国产综合视频在线| 99re成人精品视频| 亚洲欧美在线观看| 国产视频一区在线观看一区免费| 性一交一乱一区二区洋洋av| 久久欧美肥婆一二区| 亚洲国产高潮在线观看| 欧美国产亚洲视频| 一区二区三区欧美视频| 久久精品在线| 亚洲国产成人在线视频| 欧美精品色一区二区三区| 9久re热视频在线精品| 久久国产99| 亚洲精品在线观| 欧美日韩中国免费专区在线看| 亚洲一区二区日本| 美女尤物久久精品| 一区二区三区四区国产| 国产日韩在线播放| 欧美成人中文字幕| 亚洲欧美另类在线| 欧美不卡视频| 亚洲一区二区三区四区五区黄| 国产在线视频欧美| 欧美日韩国产123| 欧美在线黄色| 日韩一级成人av| 久久精品九九| 99精品欧美一区| 韩国成人理伦片免费播放| 欧美日韩一区二区三区视频| 久久精品国产亚洲高清剧情介绍| 亚洲日韩视频| 欧美成人国产一区二区| 亚洲欧美日韩国产精品| 最新热久久免费视频| 国产亚洲欧美中文| 国产精品xvideos88| 欧美va天堂va视频va在线| 欧美一区二区三区视频在线| 日韩视频免费观看高清在线视频| 久久青草福利网站| 亚洲免费小视频| 日韩午夜在线观看视频| 一区免费观看| 国产一区二区三区黄视频| 欧美日韩中文字幕综合视频| 免费成人在线观看视频| 久久成人一区| 亚洲欧美日韩综合一区| 亚洲一区二区3| 亚洲美女啪啪| 最新69国产成人精品视频免费| 毛片一区二区| 欧美一级视频一区二区| 亚洲欧美国产精品va在线观看| 亚洲毛片播放| 亚洲精品在线一区二区| 91久久精品美女| 亚洲国产二区| 亚洲国产精品久久91精品| 韩日精品视频| 黄色成人片子| 一区二区三区在线看| 好吊妞**欧美| 在线播放豆国产99亚洲| 在线观看成人av| 亚洲第一精品夜夜躁人人躁| 狠狠爱成人网| 在线播放亚洲| 91久久精品国产91性色tv| 91久久久久| 99视频精品全部免费在线| 夜夜嗨av色一区二区不卡| 在线视频一区二区| 亚洲欧美不卡| 欧美专区日韩视频| 久久精品最新地址| 久久日韩粉嫩一区二区三区| 你懂的国产精品| 亚洲国产高潮在线观看| 亚洲看片网站| 亚洲自拍偷拍麻豆| 久久久久国产精品麻豆ai换脸| 快射av在线播放一区| 欧美日本国产精品| 国产精品日韩欧美一区二区| 国产视频一区欧美| 亚洲高清三级视频| 在线视频一区二区| 久久精品国产99| 亚洲国产成人高清精品| 一本到12不卡视频在线dvd| 午夜精品久久久久99热蜜桃导演| 久久精品国产在热久久| 欧美好骚综合网| 国产午夜精品麻豆| 亚洲韩日在线| 欧美专区日韩专区| 亚洲福利在线看| 亚洲欧美一级二级三级| 老司机免费视频一区二区三区| 欧美三级资源在线| 樱花yy私人影院亚洲| 一区二区激情视频| 久久免费视频这里只有精品| 99re6热在线精品视频播放速度| 欧美专区在线观看| 欧美午夜a级限制福利片| 在线看国产日韩| 午夜久久久久久| 亚洲国产另类精品专区| 亚洲激情网站免费观看| 亚洲欧美一区二区在线观看| 欧美黄色片免费观看| 亚洲欧美日韩一区| 欧美视频在线观看|