蓝桥杯算法提高训练之高精度乘法.docx
- 文档编号:1328708
- 上传时间:2022-10-20
- 格式:DOCX
- 页数:13
- 大小:17.97KB
蓝桥杯算法提高训练之高精度乘法.docx
《蓝桥杯算法提高训练之高精度乘法.docx》由会员分享,可在线阅读,更多相关《蓝桥杯算法提高训练之高精度乘法.docx(13页珍藏版)》请在冰豆网上搜索。
蓝桥杯算法提高训练之高精度乘法
问题描述
在C/C++语言中,整型所能表示的范围一般为-231到231(大约21亿),即使longlong型,一般也只能表示到-263到263。
要想计算更加规模的数,就要用软件来扩展了,比如用数组或字符串来模拟更多规模的数及共运算。
现在输入两个整数,请输出它们的乘积。
输入格式
两行,每行一个正整数,每个整数不超过10000位
输出格式
一行,两个整数的乘积。
样例输入
99
101
样例输出
9999
数据规模和约定
每个整数不超过10000位
参考代码见下页
参考代码见下页
参考代码见下页
/**************PoweredbyGrapheneRichards**************/
extern"C++"{
#defineFLOAT_PRECISION2
#ifdef_MSC_VER
#define_SECURE_SCL0
#pragmacomment(linker,"/STACK:
102400000,102400000")
#else
#pragmaGCCoptimize("O3")
#pragmaGCCtarget("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx")
#endif
#ifdefined(_MSC_VER)||__cplusplus>199711L
#defineIT(x)auto
#defineDIT(x)auto
#else
#defineIT(x)__typeof((x).begin())
#defineDIT(x)__typeof((x).rbegin())
#endif
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#inc\
lude
#defineFAST_RWios_base:
:
sync_with_stdio(0),cin.tie(0);
#defineFS(i,a)for(lli=0;a[i];i++)
#defineFE(it,x)for(IT(x)it=(x).begin(),_en=(x).end();it!
=_en;it++)
#defineEF(it,x)for(DIT(x)it=(x).rbegin(),_en=(x).rend();it!
=_en;it++)
#defineFR(i,en)for(lli=0,_en=(en);i<_en;i++)
#defineFOR(i,en)for(lli=1,_en=(en);i<=_en;i++)
#defineRF(i,en)for(lli=(en)-1;i>=0;i--)
#defineROF(i,en)for(lli=(en);i>0;i--)
#defineFFR(i,x,y)for(lli=(x),_en=(y);i<=_en;i++)
#defineRFF(i,x,y)for(lli=(x),_en=(y);i>=_en;i--)
#definepcputchar
#definepbpush_back
#defineppbpop_back
#definepqpriority_queue
#definefifirst
#definesesecond
#definempmake_pair
#definepiipair
#definepllpair
#definesqr(x)((x)*(x))
#defineall(x)(x).begin(),(x).end()
#definerall(x)(x).rbegin(),(x).rend()
#defineclr(x)memset((x),0,sizeof(x))
#definems(x,v)memset((x),(v),sizeof(x))
#definemc(x,y)memcpy((x),(y),sizeof(y))
#defineNLputs("");
#defineLBlower_bound
#defineUBupper_bound
#definerand()((rand()<<16)^(rand()<<15)^(rand()))
#ifdef_WIN32
#define_i64_"%I\
64d"
#define_u64_"%I\
64u"
#else
#define_i64_"%l\
ld"
#define_u64_"%l\
lu"
#endif
typedefunsignedui;
typedeflonglongll;
typedefunsignedlonglongull;
typedeflongdoublelf;
usingnamespacestd;
ullgcd(ulla,ullb){if(!
b)returna;while(b^=a^=b^=a%=b);returna;}
externconstllMOD;
llksm(lla,llb){
llres=1;a%=MOD;
for(;b;b>>=1){if(b&1)res=res*a%MOD;a=a*a%MOD;}
returnres;
}
#ifdefwmx16835
#include"wmx16835.h"
#else
#defineLOG
#defineTEL
#definetest(...)0
#defineTEST(...)0
#defineTRY(...)
#defineSF(...)
#defineSC
#definePF
#definePC
#definePP
#defineSHOW_TIME
#defineBR
#endif
intmain(){SHOW_TIMEint__MAIN();__MAIN();}
#definemain__MAIN
#definey0NKwKGuBI
#definey1KFJssmlK
#defineynXypGISMR
#definej1kQDCYYWX
#definetmBdKIQNcs
#definelrUsCPcJvt
template
template b: a;} template (b c: b): (a c: a);} template a: b;} template (a a: c): (b b: c);} boolS(char*a){returnscanf("%s",a)==1;} boolS(int&a){returnscanf("%d",&a)==1;} boolS(bool&a){returnscanf("%d",&a)==1;} boolS(ui&a){returnscanf("%u",&a)==1;} boolS(float&a){returnscanf("%f",&a)==1;} boolS(double&a){returnscanf("%lf",&a)==1;} boolS(ll&a){returnscanf(_i64_,&a)==1;} boolS(ull&a){returnscanf(_u64_,&a)==1;} boolS(lf&a){doubleb;if(scanf("%lf",&b)==-1)return0;a=b;return1;} boolS(char&a){charb[2];if(scanf("%1s",b)==-1)return0;a=*b;return1;} boolSL(char*a){a[0]=0;while(gets(a)&&! a[0]);returna[0];} template template void_P(constint&x){printf("%d",x);} void_P(constbool&x){printf("%d",x);} void_P(constui&x){printf("%u",x);} void_P(constchar&x){printf("%c",x);} void_P(constchar*x){printf("%s",x);} void_P(conststring&x){printf("%s",x.c_str());} void_P(constll&x){printf(_i64_,x);} void_P(constull&x){printf(_u64_,x);} void_P(constfloat&x){printf("%.*f",FLOAT_PRECISION,x);} void_P(constdouble&x){printf("%.*f",FLOAT_PRECISION,x);} void_P(constlf&x){printf("%.*f",FLOAT_PRECISION,(double)x);} template template template template
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 蓝桥杯 算法 提高 训练 高精度 乘法