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

            ______________白白の屋
            posts - 182, comments - 102, trackbacks - 0, articles - 0
            <2010年8月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            常用鏈接

            留言簿(24)

            隨筆分類(332)

            隨筆檔案(182)

            FRIENDS

            搜索

            積分與排名

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            HDU 2574 HDOJ 2574 Hdu Girls' Day ACM 2574 IN HDU

            Posted on 2010-11-16 19:43 MiYu 閱讀(820) 評論(0)  編輯 收藏 引用 所屬分類: ACM ( 水題 )

            MiYu原創, 轉帖請注明 : 轉載自 ______________白白の屋    

             

            因為 大于 1 << 16 的和數都能用 1 -- 1<<16 之間的素數表示, 不能表示的肯定是 素數了, 所以處理 1-- 1<<16之間的素數就可以了.

            不過貌似這題的數據很弱沒有大于 1 << 16 的素數. 

             

             代碼

            #include <iostream>
            #include <algorithm>
            #include <string>
            #include <set>
            #include <map>
            #include <utility>
            #include <queue>
            #include <stack>
            #include <vector>
            #include <cstdio>
            #include <cstdlib>
            #include <cstring>
            #include <cmath>
            using namespace std;

            struct type
            {
              char name[30];
              int num;
            }a[1005];

            const int MAX_PRIME =  1 << 16;
            # define PRIME_NUM 35000
            int Primes[PRIME_NUM + 10] ;
            bool  PrimeBuffer[MAX_PRIME];
            int _Count = 0;
            int GetPrimes ()
            {
            int i, j ;
            for (i = 2 ; i < MAX_PRIME ; i++)
            {
            if (PrimeBuffer[i] == 0)
            Primes[_Count++] = i ;
            for (j = 0 ; j < _Count && i * Primes[j] <= MAX_PRIME ; j++)
            {
            PrimeBuffer[i * Primes[j]] = 1 ;
              if (i % Primes[j] == 0) break ;
            }
            }
            free (PrimeBuffer) ;
            return _Count ;
            }
            inline bool scan_d(int &num)  //整數輸入
            {
                    char in;bool IsN=false;
                    in=getchar();
                    if(in==EOF) return false;
                    while(in!='-'&&(in<'0'||in>'9')) in=getchar();
                    if(in=='-'){ IsN=true;num=0;}
                    else num=in-'0';
                    while(in=getchar(),in>='0'&&in<='9'){
                            num*=10,num+=in-'0';
                    }
                    if(IsN) num=-num;
                    return true;
            }
            int main ()
            {
                int T;
                GetPrimes ();
                scan_d(T);
                while ( T -- ) {
                    int N;
                    scan_d( N );
                    int ma = -1;
                    char mi[30] = "{";
                    
                    for ( int i = 0 ; i < N ; ++ i ) {
                          scanf ( "%s",a[i].name);
                          scan_d( a[i].num );
                          int cnt = 0;
                          for ( int j = 0 ; j < _Count && a[i].num > 1 ; ++ j ) {
                                if ( a[i].num%Primes[j]==0 ) {
                                    while(a[i].num%Primes[j]==0)
                                    {
                                       a[i].num /= Primes[j];
                                    }
                                    cnt++;      
                                }
                          }
                          if ( cnt == 0 ) cnt = 1;  // 沒加這句也能A 說明沒有 1 和 超過1<<16的素數
                          if ( ma < cnt ) { ma = cnt; strcpy ( mi, a[i].name ); }
                          else if ( ma == cnt ) { 
                               if ( strcmp ( a[i].name, mi ) < 0 )
                                    strcpy ( mi, a[i].name );     
                          }
                    }
                    puts(mi);
                }
                return 0;
            }

             

            色欲综合久久中文字幕网| 精品久久综合1区2区3区激情| 要久久爱在线免费观看| 久久精品国产亚洲αv忘忧草| 精品无码久久久久国产| 日本亚洲色大成网站WWW久久| 99精品久久精品一区二区| 免费观看久久精彩视频| 亚洲人成无码久久电影网站| 国产精品99久久99久久久| 色综合合久久天天给综看| 99精品国产在热久久无毒不卡| 久久久久久无码国产精品中文字幕 | 2021国产精品久久精品| 久久久噜噜噜久久熟女AA片| 久久亚洲AV无码西西人体| 久久天天躁夜夜躁狠狠| 久久久久亚洲?V成人无码| 国产精品对白刺激久久久| 久久久久久伊人高潮影院| 午夜精品久久久久久影视777| 伊人久久综在合线亚洲2019| 潮喷大喷水系列无码久久精品| 亚洲国产成人久久一区WWW| 99久久精品无码一区二区毛片| 国产人久久人人人人爽| 久久这里只有精品18| 99精品久久精品一区二区| 国产精品乱码久久久久久软件| 思思久久99热免费精品6| 久久久久亚洲精品无码网址| 99热成人精品免费久久| 国产精品内射久久久久欢欢| 99久久精品国产一区二区| 国产精品内射久久久久欢欢| 九九久久精品国产| 亚洲精品乱码久久久久久不卡| 久久人人爽人人爽人人片AV麻豆 | 狠狠色丁香久久婷婷综合五月| 男女久久久国产一区二区三区| 国产成人精品久久|