USACO 1.2.3_friday
阿新 • • 發佈:2018-12-12
/*
ID: cjn77881
LANG: C
TASK: friday
*/
#include <stdio.h>
int N,dow;
int dpm[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int js[7];
int isleap(int y){ //判斷是否閏年,是返回1,否返回0
return (y%4 == 0) && (y%100 != 0) || (y%400 == 0);
}
int main(){
FILE *fin = fopen("friday.in","r");
FILE *fout = fopen("friday.out" ,"w");
fscanf(fin,"%d",&N);
dow = 6; //1900年第一個月的13號是星期六
for (int i=1900;i<1900+N;i++){
for (int j=0;j<12;j++){
js[dow]++;
dow += dpm[j];
if (j == 1) dow += isleap(i);
dow %= 7;
}
}
fprintf(fout,"%d ",js[6]);
for (int i=0;i<6;i++) {
fprintf(fout,"%d",js[i]);
if ( i != 5) fprintf(fout," "); //這種輸出方法值得使用
else fprintf(fout,"\n");
}
return 0;
}