pku acm 1001题测试数据通过了,提交不上去

来源:百度知道 编辑:UC知道 时间:2024/05/16 18:41:32
程序在这儿
http://hi.baidu.com/%CB%BC%CE%AC1988/blog/item/d2090b13374e3b8a6538db30.html
希望大家有时间的话,可以把小弟的这个程序看看

看程序太累了。。只好贴我的AC代码,希望对你有所帮助。这题很恶心,很多细节处理,我当时也是调了很久才过的。
#include<iostream>
#include<cmath>
using namespace std;
int min(int a,int b){return a<b?a:b;}
void multiply(int *a,int *b,int *c,int la,int lb,int &lc)
{
int i,j,tmp;
for (i=0;i<la;i++)
{
tmp=0;
for (j=0;j<lb&&i+j<125;j++)
{
c[i+j]+=a[i]*b[j]+tmp;
tmp=c[i+j]/10000;
c[i+j]=c[i+j]%10000;
}
if (tmp>0&&i+lb<125)
{
c[i+lb]+=tmp;
}
}
lc=min(125,la+lb+2);
while (c[lc-1]==0&&lc>0) lc--;
}
int main()
{
char s[10];
int binary[100],ans[100],tmp[100],la,lb,lt;
int n,dot,i,j,count,r;
bool div;
while (cin.getline(s,10))
{
memset(binary,0,sizeof(0));
memset(ans,0,sizeof(0));
la=0;lb=0;
r=0;
for (i=0;i<6;i++)
{
if (s[i]=='.')
dot=5-i;
else