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

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 此最相思 閱讀(1900) 評論(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>
            老妇喷水一区二区三区| 99香蕉国产精品偷在线观看| 亚洲欧美日韩一区| 亚洲视频在线观看| 国产日韩欧美在线观看| 蜜臀va亚洲va欧美va天堂| 久久在线播放| 日韩一级在线| 亚洲午夜女主播在线直播| 国产亚洲毛片在线| 欧美大片网址| 欧美三日本三级少妇三2023| 欧美一区日韩一区| 久色成人在线| 亚洲一区观看| 久久日韩粉嫩一区二区三区| 一区二区三区精品久久久| 午夜精品一区二区三区四区| 亚洲肉体裸体xxxx137| 一区二区三欧美| 在线观看欧美日韩国产| 亚洲另类在线视频| 国产一区二区三区在线免费观看| 欧美成人午夜免费视在线看片| 欧美日韩视频在线观看一区二区三区 | 国产欧美精品在线| 欧美福利专区| 国产乱子伦一区二区三区国色天香| 久久九九免费视频| 欧美色图五月天| 欧美成人久久| 国产伦精品一区二区三区视频黑人| 欧美激情网友自拍| 国产综合在线视频| 亚洲一区二区久久| 日韩午夜剧场| 狼人社综合社区| 久久久久久久网站| 国产精品萝li| 亚洲日韩视频| 最新国产成人在线观看| 欧美亚洲综合网| 亚洲欧美成人一区二区在线电影| 欧美1区免费| 久久久青草婷婷精品综合日韩 | 亚洲欧美一区二区三区久久| 一区二区三区成人| 欧美福利一区| 噜噜噜在线观看免费视频日韩| 国产日韩欧美在线播放| 亚洲精品视频在线播放| 亚洲国产毛片完整版 | 国产精品高潮呻吟久久| 亚洲三级电影全部在线观看高清 | 欧美日韩国产在线观看| 欧美成人精品激情在线观看| 国产亚洲欧美aaaa| 欧美伊人久久| 麻豆精品在线视频| 国内揄拍国内精品久久| 久久精品国产精品| 久久久久国产精品人| 国产亚洲欧美激情| 久久精品视频在线看| 巨乳诱惑日韩免费av| 韩国精品一区二区三区| 久久久亚洲高清| 欧美国产日韩一二三区| 亚洲国产精品久久久久| 欧美jjzz| 日韩视频欧美视频| 亚洲制服丝袜在线| 国产日韩欧美综合精品| 久久福利视频导航| 免费高清在线一区| 亚洲精品一二| 欧美性色综合| 欧美中文字幕视频| 女生裸体视频一区二区三区| 亚洲精品视频在线看| 欧美看片网站| 亚洲一区二区不卡免费| 久久久久免费观看| 亚洲精品免费在线| 国产精品一二三四| 久久久伊人欧美| 亚洲美女精品久久| 欧美资源在线观看| 亚洲国产导航| 国产精品成人一区二区| 欧美自拍偷拍| 亚洲精品欧洲| 久久久www成人免费毛片麻豆| 亚洲高清免费| 国产精品久久影院| 欧美1区2区| 亚洲欧美在线aaa| 亚洲国产高清一区| 久久国产精品99久久久久久老狼| 亚洲电影免费在线 | 蜜臀99久久精品久久久久久软件| 亚洲美女91| 欧美成人xxx| 午夜视频一区在线观看| 亚洲欧洲日本专区| 国产欧美日韩亚洲一区二区三区| 欧美好骚综合网| 欧美亚洲日本国产| 一本色道久久综合亚洲精品小说 | 亚洲福利专区| 久久成人免费电影| 亚洲国产欧美一区二区三区同亚洲| 韩国免费一区| 欧美一区二区三区久久精品| 欧美大片专区| 亚洲尤物影院| 国产精品大片| 亚洲精品中文字| 老色批av在线精品| 亚洲欧美不卡| 国产三级精品三级| 欧美一级片在线播放| 日韩午夜免费| 国产精品久久久久久久久动漫| 一区二区久久久久| 亚洲精品一区二区三区樱花 | 国产精品一区二区男女羞羞无遮挡| 曰本成人黄色| 免费成人高清在线视频| 欧美日韩精品一区二区三区| 亚洲一区二区在线免费观看| 亚洲免费在线| 国内成+人亚洲| 亚洲香蕉视频| 亚洲欧美综合一区| 最新日韩在线| 亚洲人成欧美中文字幕| 亚洲一区二区在线免费观看| 国产欧美亚洲一区| 99视频精品在线| 国产精品亚洲欧美| 国产精品日韩欧美大师| 国产精品av一区二区| 欧美午夜精品久久久久久超碰| 欧美日在线观看| 欧美日韩一区成人| 国产精品人人做人人爽 | 日韩视频亚洲视频| 亚洲麻豆视频| 亚洲无亚洲人成网站77777| 亚洲午夜一区| 午夜精品www| 性色av一区二区怡红| 久久爱另类一区二区小说| 久久精品免费观看| 免费欧美在线| 欧美日韩一区二区在线播放| 欧美视频官网| 国产一区二区按摩在线观看| 黑人巨大精品欧美一区二区 | 欧美日韩不卡视频| 欧美激情在线播放| 久久精品国产免费观看| 男女激情视频一区| 日韩视频在线一区二区| 午夜精品视频在线观看| 蜜臀久久99精品久久久久久9| 欧美激情1区2区3区| 国产精品久久久久久久久婷婷 | 亚洲欧美激情一区| 久久久999精品免费| 亚洲高清不卡在线| 一区二区三区久久| 久久久欧美一区二区| 欧美日韩免费一区二区三区视频| 国产精品中文在线| 亚洲黄色毛片| 久久精品夜色噜噜亚洲a∨| 亚洲国产裸拍裸体视频在线观看乱了中文 | 久久久精彩视频| 亚洲人成啪啪网站| 久久精品国产第一区二区三区| 欧美日韩亚洲一区二区三区| 国产欧美日韩精品在线| 亚洲免费黄色| 久久精品视频在线看| 日韩视频免费大全中文字幕| 久久xxxx| 国产精品入口福利| 亚洲狼人综合| 久久久人成影片一区二区三区| 日韩视频在线一区二区三区| 卡一卡二国产精品| 国产日韩在线亚洲字幕中文| 一区二区三区视频观看| 欧美成人免费观看| 久久成人羞羞网站| 国产欧美日韩亚洲| 亚洲欧美视频| 亚洲素人在线|