• <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>
            隨筆-21  評論-10  文章-21  trackbacks-0
               沒有通法,沒有萬金油.
               記得partychen說過acm真的很有意思,每一道題都不一樣.今天這道題觀察出規律后,需要用大數,于是用java寫了一遍,TLE,不知道原因,一直交,一直超時,一開始懷疑java的輸出不能用Scanner, 改了BufferReader還是超時,最后用C++的大數模板還是超時,卻是一直沒想到它只要除2,只要減1
              
             1 #include<stdio.h>
             2 #include<string.h>
             3 
             4 #define maxlen 2005
             5 struct HP {int len,s[maxlen];};
             6 
             7 void PrintHP(HP x){
             8     for(int i=x.len;i>=1;i--) printf("%d",x.s[i]);
             9 }
            10 
            11 void Str2HP(const char* s ,HP &x)
            12 {
            13     x.len=strlen(s);
            14     for(int i=1;i<=x.len;i++)
            15         x.s[i]=s[x.len-i]-'0';
            16 }
            17 
            18 void dell(HP & a){
            19     int i;
            20     for(i = 1; i <= a.len; i++)
            21         if(a.s[i]==0)a.s[i] = 9else break;
            22     a.s[i]--;
            23     if(a.s[a.len]==0)a.len--;
            24 }
            25 
            26 
            27 bool div2(HP & a){
            28    int i; a.s[0= 0;
            29    for(i = a.len; i >= 1; i--)
            30    {
            31        a.s[i-1+= 10*(a.s[i]%2);
            32        a.s[i] /= 2;
            33    }
            34    if(a.s[a.len]==0)a.len--;
            35    return a.s[0]==10;
            36 }
            37 
            38 
            39 char num[maxlen];
            40 
            41 int main(){
            42     HP a;
            43     int T;
            44     for( scanf("%d"&T), getchar(); T > 0; T--){
            45         gets(num);
            46         gets(num);
            47         Str2HP(num,a);
            48         if( div2(a) )
            49             PrintHP(a);
            50         else{
            51             HP b = a; 
            52             if(div2(a) ){
            53                 dell(b); dell(b);
            54                 PrintHP(b);
            55             }
            56             else{
            57                 dell(b);
            58                 PrintHP(b);
            59             }
            60         }
            61         printf("\n");
            62         if( T > 1)printf("\n");
            63     }
            64     return 0;
            65 }
            66 
            67 /*
            68 2
            69 
            70 7
            71 
            72 6
            73 
            74 */
            75 


            posted on 2009-09-10 20:02 wangzhihao 閱讀(168) 評論(0)  編輯 收藏 引用 所屬分類: math
            亚洲中文字幕无码久久精品1 | 国产免费久久精品99久久| 久久精品三级视频| 久久精品国产精品亚洲精品 | 久久se精品一区精品二区国产 | 中文字幕亚洲综合久久2| 天天综合久久一二三区| 久久亚洲日韩看片无码| 久久精品国产精品亚洲毛片| 精品熟女少妇aⅴ免费久久| 久久久WWW成人免费精品| 亚洲人成无码网站久久99热国产| 国产成人无码精品久久久免费| 无码8090精品久久一区| 99久久国产综合精品麻豆| 麻豆久久久9性大片| 91久久精品国产成人久久| 午夜精品久久久久久久久| 77777亚洲午夜久久多喷| 久久精品亚洲一区二区三区浴池| 91久久精品国产91性色也| 久久人人爽人人爽人人片av麻烦| 亚洲中文字幕无码久久精品1 | 久久久久久国产a免费观看不卡 | 久久这里只有精品视频99| 97精品伊人久久久大香线蕉| 久久久久无码精品国产| 理论片午午伦夜理片久久 | 久久人人爽人人爽人人片AV不| 一级做a爰片久久毛片人呢| 亚洲欧美精品伊人久久| 久久天天躁夜夜躁狠狠| 人妻少妇精品久久| 欧美一级久久久久久久大片| 久久国产成人| 久久久久亚洲AV成人网人人网站 | 久久夜色精品国产欧美乱| 亚洲精品乱码久久久久久自慰| 久久亚洲国产成人影院网站| 日本三级久久网| 午夜精品久久久久9999高清|