#模型转换#洛谷 6075 [JSOI2015]子集选取

题目


分析

(n)个元素可以独立操作,考虑单个元素,
则选不选择一定有一道分界线,
而这条分界线正好要走(k)次,

每次可以选择向上走或向右走,所以为(2^k)
由于(n)个元素相互独立,则为(2^{nk})


代码

#include <cstdio>
#include <cctype>
#define rr register
using namespace std;
const int mod=1000000007;
inline signed ksm(int x,int y){
	rr int ans=1;
	for (;y;y>>=1,x=1ll*x*x%mod)
	    if (y&1) ans=1ll*ans*x%mod;
	return ans;
}
signed main(){
	rr int n,m; scanf("%d%d",&n,&m);
	return !printf("%d",ksm(2,1ll*n*m%(mod-1)));
}
原文地址:https://www.cnblogs.com/Spare-No-Effort/p/15179198.html