解题思路:
先得出第y年1月1日为星期几, 然后逐月循环查找13号是否为星期五
注意事项:
参考代码:
import java.util.Scanner; public class C1609 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { F(sc.nextInt()); } sc.close(); } private static void F(int y){ int d = 4; //1998年1月1日为星期四 for(int i = 1998; i <= y-1; i++){ if((i % 400 == 0) || (i%4 == 0 && i%100 != 0)) d += 366; else d += 365; } d %= 7; //得到第y年1月1日为星期d int sum = 0, count = 0; for(int m = 0; m < 12; m++){ if(m > 0){ switch(m){ case 2: if((y%400 == 0) || (y%4 == 0 && y%100 != 0)) sum += 29; else sum += 28; break; case 4: case 6: case 9: case 11: sum += 30; break; default: sum += 31; } } if((d+sum+12) % 7 == 5) count++; } System.out.println(count); } }
0.0分
1 人评分
C二级辅导-阶乘数列 (C语言代码)浏览:891 |
C语言程序设计教程(第三版)课后习题8.9 (C++代码)浏览:919 |
点我有惊喜!你懂得!浏览:1274 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:524 |
C语言程序设计教程(第三版)课后习题7.3 (C语言代码)浏览:643 |
简单的a+b (C语言代码)浏览:676 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:553 |
C语言训练-素数问题 (C语言代码)浏览:1065 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:781 |
数组输出 (C语言代码)错误???浏览:602 |