ZOJ3785:What day is that day?

It’s Saturday today, what day is it after 11+ 22+ 33+ … +NNdays?

Input

There are multiple test cases. The first line of input contains an integerTindicating the number of test cases. For each test case:

There is only one line containing one integerN(1 <=N<= 1000000000).

Output

For each test case, output one string indicating the day of week.

Sample Input212Sample OutputSundayThursdayHint

A week consists of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday.

通过打表发现周期是294,那么就简单了

#include <stdio.h>#include <string.h>#include <algorithm>using namespace std;char day[10][10] = {"Saturday","Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday"};int s[300];int work(int n){int sum = 1,i;for(i = 1;i<=n;i++){sum = sum*n;sum%=7;}return sum;}int main(){int t,n,i,j,len;s[0] = 0;for(i = 1;i<=294;i++){s[i] = s[i-1]+work(i);s[i]%=7;}scanf("%d",&t);while(t–){scanf("%d",&n);n%=294;printf("%s\n",day[s[n]]);}return 0;}

,走过的路成为背后的风景,不能回头不能停留,若此刻停留,

ZOJ3785:What day is that day?

相关文章:

你感兴趣的文章:

标签云: