ural 1108
2024-08-26 03:31:39
大数乘法 不会java 比赛的时候各种细节RE WA ........
#include <cstdio>
#include <cstring>
#include <algorithm> using namespace std;
int un[] = {0,0,0,0,0,1,3,6,13,26,52,104,208,416,833,1667,3335,6700};
int a[10010],b[10010],c[10010],ca;
void cc()
{
int w = 0;
memset(c, 0, sizeof(c));
for(int i = 0; i <= un[ca]; i++)
{
for(int j = 0; j <= un[ca]; j++)
{
c[i+j] += a[i]*b[j];
if(c[i+j] > 9999)
{
w = c[i+j]/10000;
c[i+j+1] += w;
c[i+j] %= 10000;
}
}
}
w = 0;
for(int i = 0; i <= un[ca]; i++)
{
c[i] += w;
w = c[i]/10000;
c[i] %= 10000;
}
memcpy(a, c, sizeof(c));
c[0] += 1;
memcpy(b, c, sizeof(c));
}
int main()
{
int n;
scanf("%d",&n);
memset(a, 0, sizeof(a));
memset(b, 0, sizeof(b));
a[0] = 1;
b[0] = 2;
ca = 0;
for(int i = 0; i < n; i++)
{
int j;
for(j = un[ca]; j >= 0; j--)
{
if(b[j])
break;
}
//printf("%d\n",j);
printf("%d",b[j--]);
for(; j >= 0; j--)
{
printf("%.4d",b[j]);
}
putchar('\n');
if(i == n-1)
break;
cc();
ca++;
}
return 0;
}
最新文章
- RHEL7.2和RHEL6.5的配置网络yum源和本地yum源
- html引入css文件
- Unity3D重要知识点
- AC日记——无线网络发射器选址 洛谷 P2038
- lantern蓝灯导致IE和一些软件不能上网解决方法
- [原创作品]观察者模式在Web App的应用
- CentOS FTP服务器权限控制
- 在XAML代码中为节点树安装事件监听器
- iOS开发一些小技巧
- 使用Dagger2做静态注入, 对比Guice.
- shell 处理文件脚本
- Javascript 面向对象编程2:构造函数的继承
- hp电脑重装win7 64位 后 所有软件都装不上问题【转】
- cnn 经典网络结构 解析
- Python标准库 -- UUID模块(生成唯一标识)
- Android开源库项目集锦
- c++——对象的构造和析构函数、构造函数的分类及调用
- [转帖 cnblog 的news ]技术实力超群的Netflix,为何没有CTO
- CURL库在C++程序中的运用浅析
- HTMLTestRunner显示用例打印内容