求大佬帮个忙看一下这道题为什么只有90分?跪求......
  • 板块题目总版
  • 楼主StarryWander
  • 当前回复4
  • 已保存回复4
  • 发布时间2020/4/28 20:33
  • 上次更新2023/11/7 03:44:39
查看原帖
求大佬帮个忙看一下这道题为什么只有90分?跪求......
247220
StarryWander楼主2020/4/28 20:33

这道题不知道为什么,只有90分,那10分就硬是找不出错误

题目是:输入一个二进制数,输出这个二进制数的17倍,二进制数不超过1000位。

代码如下:

#include<bits/stdc++.h>
using  namespace std;
int a[10001],b[10001],c[10001];
int main()
{
    string x,y;
    cin>>x;
	int l1=x.size();
    if(x=="0"){
    	cout<<0;
	}
	else{
		
		y=x;
		x+="0000";
		l1+=4;
	    int l2=y.size();
	    for(int i=0;i<l1;i++) a[i]=x[l1-i-1]-'0';
	    for(int i=0;i<l2;i++) b[i]=y[l2-i-1]-'0';
	    int l3=(l1>l2?l1:l2)+1;
	    for(int i=0;i<l3;i++){
	        c[i]+=a[i]+b[i];
	        c[i+1]+=c[i]/2;
	        c[i]%=2;
	    }
	    if(c[l3]==0) l3--;
	    for(int i=l3-1;i>=0;i--) cout<<c[i];
	}
    return 0;
}

哪位大佬看到了能回应一下,谢谢!

2020/4/28 20:33
加载中...