专栏文章
题解:P13928 [蓝桥杯 2022 省 Java B] 星期计算
P13928题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mio17nih
- 此快照首次捕获于
- 2025/12/02 11:41 3 个月前
- 此快照最后确认于
- 2025/12/02 11:41 3 个月前
两种方法,一种是暴力,另一种是数学。
暴力
只需要循环相乘,每乘一次就模一次 就可以了。
也可以使用快速幂,但其实不用那么复杂。
C++代码
CPP#include<bits/stdc++.h>
using namespace std;
//template<typename T>
//T ksm(T a,T b,T mod){
// int res=1;
// for(a%=mod;b;b>>=1,a*=a%mod)
// if(b&1) res=res*a%mod;
// return res;
//}
//int main(){
// int res=ksm(20,22,7);
// cout<<res;
// return 0;
//}快速幂算法
int main(){
int res=1;
for(int i=0;i<22;i++) res=res*20%7;
cout<<res;
return 0;
}
Java代码
CPPpublic class Main {
public static void main(String[] args) {
int res = 1;
for (int i = 0; i < 22; i++) {
res = res * 20 % 7;
}
System.out.println(res);
}
}
数学
可以将问题简化为 等于几。
- 余 ,所以 。
- 。
- 。
- 所以
注:
由于题目说是从星期六开始的,所以答案还要加上 ,因此最后的答案应是 。
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...