解题思路:
这道题本质上还是很简单的,对7取余就可以了,一般的for循环取b次,使用快速幂是logb次,数据规模也不是很大,都可以。
参考代码:
#include <iostream> using namespace std; int main() { int a,b,mod=7,z=1; string str[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"}; cin>>a>>b; for(a%=mod;b;b>>=1,a=a*a%mod){ if(b&1)z=z*a%mod; } cout<<str[z]; return 0; }
0.0分
156 人评分
这可能是一个假的冒泡法浏览:985 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:738 |
简单的a+b (C语言代码)浏览:626 |
WU-小九九 (C++代码)浏览:1684 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:684 |
良心推荐——>题解1049:C语言程序设计教程(第三版)课后习题11.1 (C语言描述——简单明了,时间复杂度低)浏览:1274 |
盐水的故事 (C语言代码)浏览:1524 |
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:553 |
简单的a+b (C语言代码)浏览:504 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:467 |