【题目】
假设今天是星期日,那么过 \(a^b\) 天之后是星期几?
输入:
两个正整数a,b,中间用单个空格隔开。0<a≤100,0<b≤100000 。
输出:
一个字符串,代表过 \(a^b\) 天之后是星期几。
其中,Monday是星期一,Tuesday是星期二,Wednesday是星期三,Thursday是星期四,Friday是星期五,Saturday是星期六,Sunday是星期日。
输入样例:
3 2000
输出样例:
【解析】
思路:循环节是7,每次循环对7取余。
#include <iostream> using namespace std; int main() { int a,b; cin>>a>>b; int result = 1; for(int i=0; i<b; i++){ result *= a; result %= 7; //每次对7取余,结果用于判断星期几 } switch(result){ case 1: cout<<"Monday";break; case 2: cout<<"Tuesday";break; case 3: cout<<"Wednesday";break; case 4: cout<<"Thursday";break; case 5: cout<<"Friday";break; case 6: cout<<"Saturday";break; default: cout<<"Sunday";break; } return 0; }
参考:https://blog.csdn.net/bailang_1314/article/details/105447817
参考:https://blog.csdn.net/tianli315/article/details/94968906