usacp_friday.cpp

来自「usaco自己做的1到5章的代码」· C++ 代码 · 共 52 行

CPP
52
字号
/*
ID: wangyuc2
PROG: friday
LANG: C++
*/

#include<iostream>
#include<cstring>
#include<fstream>

using namespace std;

int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};

int leap_year(int year)
{
  return (year%4==0 && year%100!=0)||year%400 == 0;
}

void calc_day(int year,int *a,int &startday)
{
    int i,day,thday;
    for(i=0;i<12;i++)
    {
        day=0;
        if(i==1) day+=leap_year(year);
        day+=month[i];
        thday=((startday+12)%7)>0?((startday+12)%7):7;
        a[thday-1]++;
        startday=((startday+day)%7)>0?((startday+day)%7):7;
    } 
}

int main()
{

 int i,k,n,ans,startday=1,year,month;
 int a[7]={0};
 ifstream fin("friday.in");
 ofstream fout("friday.out");
 fin>>n;
 for(year=1900;year<1900+n;year++)
 {
  //   cout<<startday<<endl;
     calc_day(year,a,startday);
 //    ans+=k;
 }
 fout<<a[5]<<' '<<a[6]<<' '<<a[0]<<' '<<a[1]<<' '<<a[2]<<' '<<a[3]<<' '<<a[4]<<endl;
// system("PAUSE");
  return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?