问题标题: 酷町堂:6754!!!

0
0
已解决
吴伊雨桐
吴伊雨桐
初级守护
初级守护

题目链接: 酷町堂:6754

错误(0分)代码:

#include<bits/stdc++.h>

using namespace std;

int b[10005];

int main(){

int a,sum=0,n;

cin>>a;

for(int i=1;i<=a;i++){

cin>>b[i];

sum+=b[i];

b[i]*=pow(2,n-i);

}

cout<<sum;

return 0;

}

 

求大佬帮忙康康!


0
已采纳
万睿言
万睿言
初级光能
初级光能

二进制转十进制:

1.从低位往高位从0开始编号,第i个数编号为i-1

2.写上进制对应的编号次方(本题是二进制,所以是2的多少次方),编号为i时即为2^i-1

3.把每一位数组乘上对应的次方相加

看好数据范围:链表的结点总数不超过 30 

可以简单的理解为该数位数不超过30位,所以说要转化成字符串,然后再倒序遍历字符串,根据进制转换的方法求其十进制数

你错在循环里面,遍历1到a输入b数组之后,用字符串把b数组里面的数存起来

字符串tmp+=b[i]+字符0

 

我要回答