2013 ACM/ICPC Asia Regional Changsha Online - E

第一个被板刷的题 

取余 依次算在周几

 1 #include <iostream>

 2 #include<cstdio>

 3 #include<cstring>

 4 #include<algorithm>

 5 #include<stdlib.h>

 6 #include<cmath>

 7 #include<map>

 8 using namespace std;

 9 double ll,ss;

10 char we[50];

11 char s[10][20] = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};

12 int main()

13 {

14     int k,y,o,i;

15     while(cin>>we>>ll>>ss)

16     {

17         double kk = ll/ss;

18         for(i = 0 ; i < 7 ; i++)

19         if(strcmp(we,s[i])==0)

20         {

21             y = i;

22             break;

23         }

24         k = ll/ss;

25         if(kk!=k)

26         k++;

27         if(y<=4)

28         k+=y*8;

29         else

30         k += 8*5+(y-5)*4;

31         o = 8*5+8;

32         k = k%o;

33         if(k==0)

34         k = 48;

35         if(k<=8)

36         printf("%s\n",s[0]);

37         else if(k>8&&k<=16)

38         printf("%s\n",s[1]);

39         else if(k>16&&k<=24)

40         printf("%s\n",s[2]);

41         else if(k>24&&k<=32)

42         printf("%s\n",s[3]);

43         else if(k>32&&k<=40)

44         printf("%s\n",s[4]);

45         else if(k>40&&k<=44)

46         printf("%s\n",s[5]);

47         else

48         printf("%s\n",s[6]);

49     }

50     return 0;

51 }
View Code

 

你可能感兴趣的:(online)