[NOIP2006]数列用到二进制技巧

[NOIP2006]数列

  • 要把每项的幂次化为二进制表示来计算
#include <iostream>
#include <cmath>

using namespace std;

int main()
{
    int k, n;
    cin >> k >> n;
    long long sum = 0;
    int t = 0;
    while(n)
    {
        if(n & 1)
        {
            sum += pow(k, t);
        }
        t ++;
        n >>= 1;
    }
    cout << sum << endl;
    return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 14:50
人力你雨姐:有后面墨迹那两句的时间问题早回答完了
点赞 评论 收藏
分享
Yki_:你要算时间成本呀,研究生两三年,博士三四年,加起来就五六年了,如果你本科去腾讯干五年,多领五年的年薪,加上公司内涨薪,可能到时候十五年总薪资也跟博士差不多
点赞 评论 收藏
分享
04-29 00:12
小米_人力资源
牛客448863700号:也得看岗位呀,我还拿下美团呢,不说了送单了
点赞 评论 收藏
分享
企业都这么缺人了吗?缺人为什么还给白菜价!
真起不了响亮的名字:我给你出个主意,把公司报出来,让牛友去投,岂不美哉
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务