标签:10 每位 int 54 carry while 计算 次方
思路:每位都要乘2 从1开始乘
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int a[55],carry=0;
memset(a,0,sizeof(a));
a[54]=1;
while(n--)
{
int i=54; //每次都从最右边开始 每位都要乘2
while(i>=0)
{
int t=a[i]*2+carry;//计算当前位的十进制
a[i]=t%10; //取余 保证不超过10
carry=t/10; //如果有大于10的在下一位准备进1
i--;
}
}
bool flag=false;
for(int i=0;i<55;i++)
{
if(a[i]||flag==true)
{
cout<<a[i];
flag=true;
}
}
}
是Lr呀
发布了3 篇原创文章 · 获赞 0 · 访问量 35
私信
关注
标签:10,每位,int,54,carry,while,计算,次方 来源: https://blog.csdn.net/m0_46297777/article/details/104613200
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。