Rubik's Cube Coloring (easy version)

#include<iostream>
#include<string>
#include<cstring>
#include<cmath>
#define ll long long
const long long  N = 1e9 + 7;
using namespace std;
long long que(long long  n, long long  sum) {
	long long ans = 1;
	while (sum) {
		if (  sum & 1)
			ans = ans  * n % N;
		sum >>= 1;
		n = n  * n % N;//n可能会爆N,所以要取余
	}
	return ans;
}
int main() {
	int n;
	cin >> n;
	long long sum = 0;
	for (int i = 0; i < n; i ++)sum += 1ll * pow(4, i);//int类型和long long 类型做运算是必须要加上long long 
	sum --;
	long long  ans = que(4, sum) * 6ll % N;
	cout << ans << endl;
}
本题主要考的是数学知识和快速幂
全部评论

相关推荐

下个早班:秒挂就是不缺人
点赞 评论 收藏
分享
迟缓的斜杠青年巴比Q...:简历被投过的公司卖出去了,我前两天遇到过更离谱的,打电话来问我有没有意向报班学Java学习,服了,还拿我学校一个学长在他们那报班学了之后干了华为OD当招牌
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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