牛客网--逆序对

逆序对

https://ac.nowcoder.com/acm/problem/14731

题目描述 求所有长度为n的01串中满足如下条件的二元组个数: 设第i位和第j位分别位ai和aj(i<j),则ai=1,aj=0。 答案对1e9+7取模。

输入描述: 输入一个n。

输出描述: 输出答案对1e9+7取模

#include<bits/stdc++.h> #define max(a,b) a>b?a:b #define min(a,b) a<b?a:b using namespace std ; typedef long long ll; typedef unsigned long long ull; const ll MOD = 1e9+7; ll my_pow(ll x, ll p){     ll ret = 1 ;     while(p>0){         if(p&1)             ret = ret*x%MOD;         x = x*x%MOD;         p>>=1;     }     return ret ; } int main(){     ll n;     cin>>n;     if(n<=1) cout<<"0"<<endl;     else if(n==2) cout<<"1"<<endl;     else{         ll ans = ((my_pow(2,n-3)*(n%MOD)%MOD)*((n-1)%MOD)%MOD);          cout<<ans<<endl;     };     return 0; }

全部评论

相关推荐

程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
3
收藏
分享

创作者周榜

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