洛谷P1062数列

洛谷每日一题

今天分享的是数列问题,很有意思。

文章目录

  • 题目描述
  • 思想
  • 代码
  • 总结

题目描述

在这里插入图片描述样例示范

在这里插入图片描述

思想

这个题用的是3,但是如果换成2的话,就不难看出这个为2进制转十进制。
n为十进制数,转换二进制,然后再由二进制的数乘以相应底数,即为所求数。
1,2,3,4,5
01,10,11,100…

代码

#include
#include
int main()
{int k,n;long long int ans = 0,plus = 1;//以防数据超出范围 scanf("%d%d",&k,&n);while(n)//二进制转十进制做法 {ans += (n % 2) * plus;//取余乘以底数 n /= 2;plus *= k;}printf("%ld",ans); return 0;
}

总结

这题主要难点在于看不出此题为二进制转十进制做法,还有用代码实现二进制转十进制,这些都是难点,希望大家能用心体会。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部