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

misschuer

常用鏈接

統(tǒng)計(jì)

積分與排名

百事通

最新評論

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) 評論(6)  編輯 收藏 引用

評論

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

這題真難呀!!!!  回復(fù)  更多評論   

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

嗯  回復(fù)  更多評論   

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

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

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

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

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

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

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

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


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   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>
            亚洲二区视频| 一区二区三区产品免费精品久久75 | 欧美激情第一页xxx| 亚洲一区二区三区精品在线 | 欧美激情一区二区三区在线视频观看| 最新亚洲一区| 亚洲一区视频在线| 最新亚洲视频| 影音先锋日韩有码| 91久久久久久久久| 亚洲国产一成人久久精品| 欧美一区观看| 亚洲国产激情| 亚洲欧洲偷拍精品| 妖精成人www高清在线观看| 亚洲国产精品免费| 一本色道久久| 久久久夜色精品亚洲| 久久免费视频这里只有精品| 久久久成人精品| 欧美成人嫩草网站| 日韩午夜在线视频| 欧美一区二区三区在线播放| 久久久99精品免费观看不卡| 老司机免费视频一区二区三区 | 正在播放亚洲| 亚洲在线观看免费视频| 久久精品国产欧美亚洲人人爽| 久久综合给合久久狠狠色| 亚洲人成网在线播放| 亚洲一区自拍| 久久不射网站| 巨胸喷奶水www久久久免费动漫| 亚洲电影免费在线观看| 亚洲男人av电影| 欧美精品在线极品| 国产日韩欧美中文| 中文有码久久| 亚洲精品视频啊美女在线直播| 小嫩嫩精品导航| 国产精品女主播在线观看| 亚洲经典在线| 亚洲国产一区视频| 欧美国产国产综合| 99riav久久精品riav| 欧美国产日本韩| 欧美成人久久| 亚洲一二三区精品| 亚洲免费久久| 国产精品久久久久aaaa| 亚洲欧美电影在线观看| 亚洲自拍偷拍网址| 国产一区二区三区久久悠悠色av | 亚洲福利国产| 亚洲另类自拍| 国产精品久久久久av| 亚洲男同1069视频| 欧美一区二区播放| 欧美日韩另类一区| 欧美一二区视频| 亚洲国产一区二区三区在线播| 欧美成人蜜桃| 国产欧美一区二区三区在线看蜜臀| 久久福利资源站| 欧美jizzhd精品欧美巨大免费| 欧美成人激情在线| 久久国产乱子精品免费女| 欧美激情一区二区三区高清视频 | 亚洲视频在线视频| 美国三级日本三级久久99| 性娇小13――14欧美| 欧美国产综合视频| 另类图片国产| 国产视频一区在线| 宅男噜噜噜66国产日韩在线观看| 国产自产女人91一区在线观看| 亚洲欧洲一区二区三区在线观看| 国产日韩欧美一区二区三区四区 | 亚洲欧美国产高清va在线播| 久久免费黄色| 久热国产精品| 在线免费观看日韩欧美| 久久综合99re88久久爱| 久久免费一区| 黄色国产精品| 老司机67194精品线观看| 欧美国产大片| 99精品国产高清一区二区| 嫩模写真一区二区三区三州| 亚洲国产精品高清久久久| 亚洲精品小视频在线观看| 欧美激情一区二区三区| 亚洲小说区图片区| 久久视频一区二区| 99pao成人国产永久免费视频| 欧美日韩国产首页| 欧美一级免费视频| 国内精品久久久久影院优| 久久久www| 亚洲免费视频中文字幕| 欧美二区在线| 欧美一区三区二区在线观看| 国产日本欧美一区二区三区在线| 久久精品免视看| 亚洲新中文字幕| 亚洲国产精品视频| 久久久久亚洲综合| 99pao成人国产永久免费视频| 开元免费观看欧美电视剧网站| 欧美午夜免费影院| 久久女同精品一区二区| 亚洲专区免费| 日韩午夜黄色| 亚洲激情午夜| 嫩草国产精品入口| 欧美一区激情| 欧美在线观看一二区| 亚洲自拍电影| 亚洲欧美韩国| 欧美一级午夜免费电影| 亚洲欧美日韩国产综合| 亚洲网友自拍| 亚洲综合日韩在线| 亚洲欧美日韩直播| 欧美一级成年大片在线观看| 亚洲欧美国产一区二区三区| 在线一区二区三区四区五区| 亚洲精品免费网站| 亚洲精品一区二区在线| 激情视频亚洲| 最新国产成人在线观看| 日韩亚洲欧美中文三级| 一区二区av在线| 亚洲欧美日产图| 麻豆9191精品国产| 亚洲日本国产| 久久国产综合精品| 免费成人黄色片| 老司机一区二区| 99国产精品视频免费观看一公开 | 亚洲伦理精品| 亚洲欧美日韩在线播放| 久久亚洲精品一区二区| 亚洲精品看片| 久久亚洲精品伦理| 国产欧美一区二区三区国产幕精品 | 亚洲午夜精品久久久久久app| 久久gogo国模裸体人体| 欧美色中文字幕| 91久久精品网| 男女精品网站| 久久久亚洲人| 黄色日韩网站视频| 久久综合狠狠综合久久激情| 亚洲精品一区二区三区不| 裸体一区二区| 最新成人av网站| 亚洲娇小video精品| 久久伊人精品天天| 亚洲国产精品一区二区尤物区| 久久国产精品99久久久久久老狼| 日韩亚洲欧美成人| 欧美日韩视频专区在线播放 | 欧美日韩国产经典色站一区二区三区| 国产精品久久97| 亚洲一线二线三线久久久| 一本一本久久a久久精品综合麻豆| 欧美不卡三区| 这里只有精品丝袜| 亚洲欧美国产视频| 国产自产精品| 国内久久视频| 亚洲精品一二三| 国产午夜精品视频| 欧美国产日韩一区二区在线观看| 麻豆国产精品一区二区三区 | 欧美一区2区三区4区公司二百| 亚洲一级在线| 日韩亚洲欧美在线观看| 午夜精品久久久久久久蜜桃app | 亚洲日本精品国产第一区| 一本色道**综合亚洲精品蜜桃冫| 国产毛片一区二区| 99精品视频免费在线观看| 黄色精品在线看| 欧美在线地址| 欧美在线播放高清精品| 欧美老女人xx| 亚洲国产精品女人久久久| 国产欧美日本一区视频| 99www免费人成精品| 亚洲精品视频在线观看网站 | 日韩亚洲欧美精品| 最新中文字幕亚洲| 久久天堂国产精品| 久久久久久久成人| 国产一区欧美日韩| 欧美亚洲视频在线观看| 亚洲欧美日韩另类精品一区二区三区| 狂野欧美激情性xxxx|