#include<iostream>
using namespace std;
int main(){
int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int w;
cin>>w;
for(int i=1;i<13;++i){
int days=0;
for(int j=1;j<i;++j)
days+=month[j];
days+=13-1;
int temp=days%7;
temp+=w;
if(temp>7)temp-=7;
if(temp==5)
cout<<i<<endl;
}
Input输入有一行,即一月一日星期几(w)。(1 <= w <= 7)
Output输出有一到多行,每行一个月份,表示该月的13日是星期五。
Sample Input
Sample Output
Hint1、3、5、7、8、10、12月各有31天
4、6、9、11月各有30天
2月有28天
using namespace std;
int main(){
int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int w;
cin>>w;
for(int i=1;i<13;++i){
int days=0;
for(int j=1;j<i;++j)
days+=month[j];
days+=13-1;
int temp=days%7;
temp+=w;
if(temp>7)temp-=7;
if(temp==5)
cout<<i<<endl;
}
}
在国外,每月的13号和每周的星期5都是不吉利的。特别是当13号那天恰好是星期5时,更不吉利。已知某年的一月一日是星期w,并且这一年一定不是闰年,求出这一年所有13号那天是星期5的月份,按从小到大的顺序输出月份数字。(w=1..7)
7
1 10
4、6、9、11月各有30天
2月有28天