题目描述:
115. Calendar
time limit per test: 0.5 sec.
memory limit per test: 4096 KB
First year of new millenium is gone away. In commemoration of it write a program that finds the name of the day of the week for any date in 2001.
Input
Input is a line with two positive integer numbers N and M, where N is a day number in month M. N and M is not more than 100.
Output
Write current number of the day of the week for given date (Monday – number 1, … , Sunday – number 7) or phrase “Impossible” if such date does not exist.
Sample Input
21 10
Sample Output
7
就是一道简单的模拟题。
#include<iostream>
#include<cstring>
#include<cstdio>
#include<set>
#include<algorithm>
#include<vector>
#include<cstdlib>
#define inf 0xfffffff
#define CLR(a,b) memset((a),(b),sizeof((a)))
using namespace std;
int const nMax = 40000;
typedef int LL;
typedef pair<LL,LL> pij;
int a[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int n,m;
int main()
{
cin>>n>>m;
int d=0;
if(m<=0||m>12||a[m]<n||n<=0){
printf("Impossible\n");
return 0;
}
for(int i=0;i<m;i++){
d+=a[i];
}
d+=n;
d%=7;
if(d==0)d+=7;
printf("%d\n",d);
return 0;
}