一些简化代码的小技巧

tips

本文专门用于介绍一些非常好用的函数和操作,学习一个是一个。可以使得比赛的时候大大简化工作量。

计算二进制中的1的个数

__builtin_popcount(x)

计算gcd

__gcd(x,y)

计算全排列

next_permutation(a,a+n)

auto

    string s;
    cin>>s;
    for(auto c:s) cout<<c<<" ";

判断乘积是否超long long

bool Overflow(ll x,ll y)
{
    if(x>LLONG_MAX/y)return false;
    else return true;
}

快速幂

ll fpow(ll n, ll k, ll p = mod){ll r = 1; for(;k;k>>=1){if(k&1)r = r*n%p; n = n *n%p;}return r; }

逆元

ll inv(ll n, ll p = mod){return fpow(n,p-2,p);}
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-02 18:35
简历上把1个月实习写成了3个月,会进行背调吗?
码农索隆:一个月有一个月的实习经历,三个月有三个月的实习经历
点赞 评论 收藏
分享
星辰再现:裁员给校招生腾地方
点赞 评论 收藏
分享
06-13 10:15
门头沟学院 Java
想去夏威夷的大西瓜在...:我也是27届,但是我现在研一下了啥项目都没有呀咋办,哎,简历不知道咋写
点赞 评论 收藏
分享
07-02 18:09
门头沟学院 Java
苍穹外卖和谷粒商城这俩是不是烂大街了,还能做吗?
想去重庆的鸽子在吐槽:你不如把这俩做完自己搞明白再优化点再来问 何必贩卖焦虑
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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