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

misschuer

常用鏈接

統(tǒng)計(jì)

積分與排名

百事通

最新評(píng)論

hdu 1402 A * B Problem Plus

http://acm.hdu.edu.cn/showproblem.php?pid=1402
#include<iostream>
#include
<cmath>
using namespace std;
typedef 
struct vir{
        
double re,im;
        vir()
{}
        vir(
double a,double b){re=a;im=b;}
        vir 
operator +(const vir &b)return vir(re+b.re,im+b.im);}
        vir 
operator -(const vir &b)return vir(re-b.re,im-b.im);}
        vir 
operator *(const vir &b)return vir(re*b.re-im*b.im,re*b.im+b.re*im);}
}
vir;
vir x1[
200005],x2[200005];
const double Pi = acos(-1.0);
void change(vir *x,int len,int loglen)
{
        
int i,j,k,t;
        
for(i=0;i<len;i++)
        
{
                t 
= i;
                
for(j=k=0;j<loglen;j++,t>>=1)
                        k 
= (k<<1)|(t&1);
                
if(k<i)
                
{
                        vir wt 
=  x[k];
                        x[k] 
= x[i];
                        x[i] 
= wt;
                }

        }

}

void fft(vir *x,int len,int loglen)
{
        
int i,j,t,s,e;
        change(x,len,loglen);
        t 
= 1;
        
for(i=0;i<loglen;i++,t<<=1)
        
{
                s 
= 0;
                e 
= s + t;
                
while(s<len)
                
{
                        vir a,b,wo(cos(Pi
/t),sin(Pi/t)),wn(1,0);
                        
for(j=s;j<s+t;j++)
                        
{
                                a 
= x[j];
                                b 
= x[j+t]*wn;
                                x[j] 
= a + b;
                                x[j
+t] = a - b;
                                wn 
=wn*wo;
                        }

                        s 
= e+t;
                        e 
= s+t;
                }

        }

}


void dit_fft(vir *x,int len,int loglen)
{
        
int i,j,s,e,t=1<<loglen;
        
for(i=0;i<loglen;i++)
        
{
                t
>>=1;
                s
=0;
                e
=s+t;
                
while(s<len)
                
{
                        vir a,b,wn(
1,0),wo(cos(Pi/t),-sin(Pi/t));
                        
for(j=s;j<s+t;j++)
                        
{
                                a 
= x[j]+x[j+t];
                                b 
= (x[j]-x[j+t])*wn;
                                x[j] 
= a;
                                x[j
+t] = b;
                                wn 
= wn*wo;
                        }

                        s 
= e+t;
                        e 
= s+t;
                }

        }

        change(x,len,loglen);
        
for(i=0;i<len;i++)
                x[i].re
/=len;
}



int main()
{
        
char a[100005],b[100005];
        
int i,len1,len2,t,over,len,loglen;
        
        
while(scanf("%s%s",a,b)!=EOF)
        
{
                len1 
= strlen(a)<<1;
                len2 
= strlen(b)<<1;
                len 
= 1;
                loglen 
= 0;
                
while(len<len1)
                
{
                        len
<<=1;
                        loglen
++;
                }

                
while(len<len2)
                
{
                        len
<<=1;
                        loglen
++;
                }

                
for(i=0;a[i]!='\0';i++)
                
{
                        x1[i].re 
= a[i]-'0';
                        x1[i].im 
= 0;
                }

                
for(;i<len;i++)
                        x1[i].re 
= x1[i].im = 0;
                
for(i=0;b[i]!='\0';i++)
                
{
                        x2[i].re 
= b[i]-'0';
                        x2[i].im 
= 0;
                }

                
for(;i<len;i++)
                        x2[i].re 
= x2[i].im = 0;
                fft(x1,len,loglen);
                fft(x2,len,loglen);
                
for(i=0;i<len;i++)
                        x1[i] 
= x1[i]*x2[i];
                dit_fft(x1,len,loglen);
                
for(i=(len1+len2)/2-2,over=loglen=0;i>=0;i--)
                
{
                        t 
= x1[i].re + over + 0.5;
                        a[loglen
++= t%10;
                        over 
=  t/10;
                }

                
while(over)
                
{
                        a[loglen
++= over%10;
                        over 
/= 10;
                }

                
for(loglen--;loglen>=0&&!a[loglen];loglen--);
                
if(loglen<0)
                        putchar(
'0');
                
else
                        
for(;loglen>=0;loglen--)
                                putchar(a[loglen]
+'0');
                putchar(
'\n');
        }

        
return 0;
}

posted on 2009-04-18 15:59 此最相思 閱讀(1907) 評(píng)論(6)  編輯 收藏 引用

評(píng)論

# re: hdu 1402 A * B Problem Plus 2009-10-13 20:18 zhou

這題真難呀?。。?!  回復(fù)  更多評(píng)論   

# re: hdu 1402 A * B Problem Plus 2009-10-13 20:20 啊是

嗯  回復(fù)  更多評(píng)論   

# re: hdu 1402 A * B Problem Plus 2009-10-13 20:35 zhou

回復(fù)這么快!!! ORZ ORZ!!!  回復(fù)  更多評(píng)論   

# re: hdu 1402 A * B Problem Plus 2009-10-13 20:36 啊是

連接到Q了呀  回復(fù)  更多評(píng)論   

# re: hdu 1402 A * B Problem Plus 2010-01-16 00:43 abilitytao

請(qǐng)問(wèn)有什么這方面的資料嗎?我最近也想研究這個(gè)問(wèn)題 希望能和你交流^_^
我的QQ是 64076241  回復(fù)  更多評(píng)論   

# re: hdu 1402 A * B Problem Plus 2011-04-03 23:13 xiaomai

這題,太惡心了  回復(fù)  更多評(píng)論   


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            性欧美暴力猛交69hd| 午夜宅男久久久| 亚洲综合精品自拍| 亚洲第一精品夜夜躁人人躁| 亚洲网友自拍| 欧美性猛交99久久久久99按摩| 亚洲激情一区| 欧美激情精品久久久久久免费印度| 久久成人18免费网站| 国产一区激情| 久久香蕉精品| 亚洲欧美国产一区二区三区| 亚洲精品乱码久久久久久蜜桃麻豆| 久久久久国内| 亚洲欧美日韩国产| 国产农村妇女毛片精品久久麻豆| 亚洲嫩草精品久久| 一区二区三区四区精品| 国产精品久久二区二区| 亚洲专区欧美专区| 亚洲一区二区在线免费观看视频| 国产精品无码专区在线观看 | 日韩一区二区免费看| 欧美国产精品专区| 欧美大秀在线观看| 这里是久久伊人| 国产精品99久久久久久www| 国产精品日本精品| 久久五月天婷婷| 欧美阿v一级看视频| 一区二区久久| 午夜激情亚洲| 国产亚洲欧洲一区高清在线观看| 久久精品国产v日韩v亚洲 | 欧美精品999| 精品成人在线| 亚洲第一福利在线观看| 欧美三级午夜理伦三级中文幕 | 亚洲国产婷婷香蕉久久久久久| 欧美精品18+| 久久黄色级2电影| 蜜桃久久av| 亚洲欧美日本视频在线观看| 久久精品主播| 亚洲亚洲精品在线观看 | 性18欧美另类| 亚洲国产一区二区在线| 亚洲一区二区三区成人在线视频精品| 国内一区二区三区| 亚洲免费福利视频| 伊人久久久大香线蕉综合直播 | 免费不卡在线观看| 亚洲欧美在线视频观看| 久久青草久久| 亚洲综合国产激情另类一区| 久久综合国产精品| 午夜精品久久久久影视| 欧美暴力喷水在线| 久久综合激情| 国产精品久久久久久久app| 欧美承认网站| 国产综合网站| 亚洲一区二区视频| 日韩亚洲欧美高清| 亚洲成在人线av| 久久久久88色偷偷免费| 国一区二区在线观看| 一本大道久久a久久综合婷婷 | 99国内精品久久| 久久久www免费人成黑人精品| 亚洲天堂av电影| 久久综合影视| 久久久久网址| 国产精品久久77777| 亚洲美女毛片| 亚洲精品乱码视频| 一区二区三区高清在线| 狂野欧美激情性xxxx| 久久久999国产| 国产欧美1区2区3区| 一区二区三区国产在线观看| 雨宫琴音一区二区在线| 欧美.www| 久久视频在线看| 久久精品夜色噜噜亚洲a∨| 国产精品萝li| 亚洲视频一区二区免费在线观看| 夜久久久久久| 欧美日韩国产不卡| 亚洲激情欧美激情| 91久久视频| 久久蜜臀精品av| 欧美承认网站| 亚洲精品国产精品乱码不99按摩| 乱码第一页成人| 欧美国产精品| 亚洲精品日产精品乱码不卡| 欧美精品一区二区三区很污很色的 | 国产精品一区二区黑丝| 亚洲专区在线| 久久精品国产久精国产一老狼| 国产精品区二区三区日本| 午夜精品网站| 欧美成年网站| 99天天综合性| 国产精品视频免费| 欧美一区二区精品| 久久综合中文| 久久精品一区二区国产| 狼狼综合久久久久综合网| 亚洲电影网站| 欧美精品91| 亚洲女爱视频在线| 麻豆成人在线播放| 亚洲乱码精品一二三四区日韩在线 | 久久亚洲综合色| 亚洲电影免费在线| 欧美日韩大陆在线| 亚欧成人在线| 欧美护士18xxxxhd| 亚洲综合二区| 亚洲电影免费在线观看| 在线观看日韩av先锋影音电影院| 亚洲午夜久久久| 国产精品久久午夜夜伦鲁鲁| 欧美专区福利在线| 欧美激情亚洲| 亚洲综合色婷婷| 狠狠狠色丁香婷婷综合久久五月 | 麻豆乱码国产一区二区三区| 亚洲激情在线播放| 亚洲欧美一区二区原创| 亚洲黄色大片| 国产麻豆综合| 欧美成人免费播放| 亚洲女人小视频在线观看| 裸体歌舞表演一区二区| 亚洲自拍16p| 亚洲国产小视频在线观看| 国产精品乱人伦中文| 久久免费午夜影院| 亚洲综合二区| 日韩一级片网址| 欧美成人有码| 久久精品导航| 亚洲女ⅴideoshd黑人| 亚洲国产精品一区二区第一页| 欧美四级电影网站| 免费看的黄色欧美网站| 欧美一区二区三区免费看| 一区二区高清在线观看| 欧美激情精品久久久六区热门| 久久精品午夜| 欧美一级理论性理论a| 日韩亚洲精品电影| 亚洲经典一区| 一区二区三区在线高清| 国产欧美三级| 国产精品亚洲一区| 国产精品h在线观看| 欧美日韩123| 欧美精品在线视频| 亚洲精品在线观看视频| 亚洲国产高清在线观看视频| 美女被久久久| 久久综合激情| 老牛嫩草一区二区三区日本 | 午夜精品久久| 亚洲午夜精品在线| 日韩午夜在线视频| 亚洲主播在线观看| 一区二区三区欧美在线观看| 99re8这里有精品热视频免费| 欧美韩国一区| 亚洲激情二区| 99国产精品自拍| 中国成人在线视频| 亚洲一区二三| 午夜在线a亚洲v天堂网2018| 亚洲视频播放| 午夜精品一区二区三区在线播放| 亚洲欧美日韩国产中文在线| 亚洲欧美在线另类| 欧美一区二区视频网站| 欧美伊久线香蕉线新在线| 久久狠狠亚洲综合| 久久香蕉国产线看观看网| 久久综合婷婷| 欧美人妖在线观看| 国产精品国码视频| 国产欧美日韩91| 激情欧美一区二区| 亚洲国产精品一区制服丝袜| 亚洲三级影院| 欧美激情视频一区二区三区在线播放 | 欧美国产精品v| 欧美激情视频一区二区三区在线播放| 欧美日韩精品福利| 国产欧美一区二区三区久久人妖| 激情小说亚洲一区|