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

misschuer

常用鏈接

統計

積分與排名

百事通

最新評論

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 此最相思 閱讀(1908) 評論(6)  編輯 收藏 引用

評論

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

這題真難呀!!!!  回復  更多評論   

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

嗯  回復  更多評論   

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

回復這么快!!! ORZ ORZ!!!  回復  更多評論   

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

連接到Q了呀  回復  更多評論   

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

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

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

這題,太惡心了  回復  更多評論   


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   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久久久久久久vr| 欧美激情一区二区三区在线视频观看| 欧美在线不卡视频| 国产日韩欧美另类| 久久久精品国产一区二区三区| 亚洲一区二区三区中文字幕| 国产精品久久久久99| 久久久久久日产精品| 国产欧美日韩伦理| 久久成人18免费网站| 欧美一区二区三区在线| 韩国成人福利片在线播放| 久久婷婷麻豆| 美国十次了思思久久精品导航| 1769国产精品| 亚洲国产一区二区三区高清| 欧美99在线视频观看| 亚洲免费高清视频| 一区二区三区不卡视频在线观看| 国产精品jvid在线观看蜜臀| 欧美国产第一页| 久久久精品一区二区三区| 欧美sm重口味系列视频在线观看| 亚洲成在人线av| 亚洲国产精品黑人久久久| 欧美伦理视频网站| 亚洲欧美日韩一区在线| 亚洲图片在线观看| 一区二区三区视频在线| 国产乱码精品1区2区3区| 久久亚洲春色中文字幕久久久 | 蜜桃av综合| 免费看黄裸体一级大秀欧美| 9色国产精品| 一区二区动漫| 永久91嫩草亚洲精品人人| 亚洲国产精品久久人人爱蜜臀 | 亚洲精品乱码久久久久| 一本色道久久综合亚洲91| 国产区在线观看成人精品| 亚洲大片精品永久免费| 国产精品www色诱视频| 久久综合九色九九| 欧美视频二区| 欧美大片18| 国产精品免费电影| 亚洲黄色在线观看| 国产日韩欧美综合在线| 亚洲人成在线观看网站高清| 国产欧美精品一区二区三区介绍| 欧美成人自拍视频| 国产欧美日韩综合一区在线播放| 亚洲国产精品久久久久婷婷老年| 国产亚洲欧美另类中文| 亚洲欧洲在线一区| 一区二区在线观看av| 亚洲天堂成人在线观看| 91久久久精品| 久久精品国产99精品国产亚洲性色 | 亚洲麻豆一区| 欧美一区免费视频| 亚洲欧美日韩国产中文| 欧美激情va永久在线播放| 久久久久久夜| 国产精品视频免费在线观看| 最近中文字幕mv在线一区二区三区四区| 国产日韩欧美亚洲一区| 亚洲天堂免费观看| 中文久久乱码一区二区| 欧美大片免费久久精品三p| 麻豆精品一区二区av白丝在线| 国产毛片精品国产一区二区三区| 亚洲精品视频在线观看免费| 亚洲国产精品毛片| 久久久福利视频| 久久精品99国产精品| 国产精品羞羞答答xxdd| 一区二区高清视频| 在线视频精品一区| 欧美日韩激情网| 亚洲老司机av| 正在播放欧美一区| 欧美日韩美女一区二区| 日韩系列在线| 亚洲欧美日本在线| 欧美三级第一页| 国产精品99久久99久久久二8| 亚洲图片欧洲图片日韩av| 欧美另类一区二区三区| 亚洲蜜桃精久久久久久久| 99视频精品全国免费| 欧美日韩国产丝袜另类| 99精品视频免费全部在线| 亚洲一区二区久久| 国产精品久久久久久久久久ktv| 国产精品99久久久久久久久 | 在线亚洲电影| 国产精品草莓在线免费观看| 亚洲五月六月| 久久精品国产免费观看| 好看的日韩av电影| 欧美大片在线观看| 99视频有精品| 欧美专区亚洲专区| 在线成人www免费观看视频| 麻豆成人在线| 一本色道久久88综合日韩精品 | 99国产精品久久| 欧美午夜精品一区二区三区| 亚洲午夜精品福利| 久久在线免费观看| 一区二区高清视频| 国产亚洲精品久久久久动| 久久婷婷麻豆| 9i看片成人免费高清| 久久激情五月激情| 亚洲精一区二区三区| 国产精品美腿一区在线看| 久久精品一二三区| 亚洲美女av在线播放| 久久国产精品毛片| 亚洲精品视频免费| 国产区精品视频| 欧美精品播放| 性欧美大战久久久久久久久| 欧美成人午夜免费视在线看片| 中日韩美女免费视频网址在线观看| 国产欧美精品在线| 欧美黄色免费网站| 新狼窝色av性久久久久久| 亚洲国产精品嫩草影院| 欧美一区二区三区在线播放| 亚洲精品日韩一| 禁断一区二区三区在线| 国产精品久久久久久久久久免费看| 久热精品视频在线观看| 亚洲午夜av电影| 最新日韩精品| 久久大逼视频| 亚洲婷婷综合久久一本伊一区| 一色屋精品亚洲香蕉网站| 欧美日韩一区二区免费在线观看| 久久综合九色综合欧美狠狠| 亚洲尤物在线| 中文国产一区| 亚洲精品五月天| 亚洲电影在线| 奶水喷射视频一区| 久久精品九九| 午夜精品成人在线视频| 一区二区不卡在线视频 午夜欧美不卡在| 黑丝一区二区三区| 国产欧美日韩综合一区在线观看 | 久久婷婷久久一区二区三区| 亚洲欧美日韩视频二区| 一本大道久久a久久综合婷婷| 亚洲大黄网站| 一区免费视频| 国产在线欧美日韩| 国产深夜精品福利| 国产久一道中文一区| 国产精品久久国产愉拍| 欧美日韩国产小视频在线观看| 农夫在线精品视频免费观看| 久久久久久成人| 久久嫩草精品久久久久| 久久久久久网址| 玖玖玖国产精品| 免费成人毛片| 欧美激情a∨在线视频播放| 欧美国产成人在线| 欧美看片网站| 欧美色中文字幕| 国产精品一卡二卡| 国产欧美精品在线| 国内成+人亚洲| 在线不卡中文字幕| 亚洲国产成人不卡| 亚洲人成网站999久久久综合| 最新精品在线| a91a精品视频在线观看| 一区二区日韩欧美| 亚洲欧美日韩在线播放| 香港久久久电影| 久久九九免费| 欧美www在线| 亚洲国产婷婷香蕉久久久久久99| 亚洲欧洲一区二区在线观看| av不卡在线| 久久福利影视| 欧美成人综合一区| 欧美亚洲第一页| 91久久精品一区| 在线中文字幕一区| 久久精品久久99精品久久| 欧美黄色aaaa| 国产日韩欧美精品|