题目描述

13号又是一个星期五。13号在星期五比在其他日子少吗?为了回答这个问题,写一个程序,要求计算每个月的十三号落在周一到周日的次数。给出N年的一个周期,要求计算1900年1月1日至1900+N-1年12月31日中十三号落在周一到周日的次数,N为正整数且不大于400.

这里有一些你要知道的:

1、1900年1月1日是星期一.

2、4,6,11和9月有30天.其他月份除了2月都有31天.闰年2月有29天,平年2月有28天.

3、年份可以被4整除的为闰年(1992=4*498 所以 1992年是闰年,但是1990年不是闰年).

4、以上规则不适合于世纪年。可以被400整除的世纪年为闰年,否则为平年。所以,1700,1800,1900和2100年是平年,而2000年是闰年.

请不要调用现成的函数

请不要预先算好数据(就是叫不准打表)!

输入输出格式

输入格式:

一个正整数n.

输出格式:

输入输出样例

输入样例#1:

20

输出样例#1:

36 33 34 33 35 35 34

说明

题目翻译来自NOCOW。

USACO Training Section 1.1

模拟模拟模拟

有个神奇的蔡勒公式,然而反正记不住,就不用了。

 1 /*by SilverN*/
 2 #include<algorithm>
 3 #include<iostream>
 4 #include<cstring>
 5 #include<cstdio>
 6 #include<cmath>
 7 #include<vector>
 8 using namespace std;
 9 int day[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
10 int n;
11 int cnt[8];
12 int main(){
13     scanf("%d",&n);
14     int i,j;
15     int w=0;
16     for(i=0;i<n;i++){
17         int y=1900+i;
18         if(y%4==0 && (y%100!=0 || y%400==0))day[2]=29;
19         else day[2]=28;
20         for(j=1;j<=12;j++){
21             for(int k=1;k<=day[j];k++){
22                 w=(w)%7+1;
23                 if(k==13){
24                     cnt[w]++;
25                 }
26             }
27         }
28     }
29     printf("%d %d ",cnt[6],cnt[7]);
30     for(i=1;i<=5;i++){
31         printf("%d ",cnt[i]);
32     }
33     printf("\n");
34     return 0;
35 }

转载于:https://www.cnblogs.com/SilverNebula/p/6039585.html

洛谷P1202 [USACO1.1]黑色星期五Friday the Thirteenth相关推荐

  1. 洛谷P1219 [USACO1.5]八皇后 Checker Challenge(C语言)

    洛谷P1219 [USACO1.5]八皇后 Checker Challenge 题目 代码 这个八皇后问题也是经典入门深搜的题目了呀,理论上深搜都可以运用数据结构的栈来模拟计算机内部的压栈操作.但这里 ...

  2. 巧用Calendar求解黑色星期五问题(洛谷P1202题题解,Java语言描述)

    题目要求 P1202题目链接 分析 嘿嘿嘿,直接使用Calendar,注意的问题是一月对应的是0,但年份和日期都是真的. Calendar.DAY_OF_WEEKCalendar.DAY\_OF\_W ...

  3. 洛谷 P1202 模拟 - 黑色星期五 Friday the Thirteenth

    [题目描述] 13号又是一个星期五.13号在星期五比在其他日子少吗?为了回答这个问题,写一个程序,要求计算每个月的十三号落在周一到周日的次数.给出N年的一个周期,要求计算1900年1月1日至1900+ ...

  4. 洛谷 P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib

    P1218 [USACO1.5]特殊的质数肋骨 Superprime Rib 题目描述 农民约翰的母牛总是产生最好的肋骨.你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们.农民约翰确定他卖给 ...

  5. 洛谷 P1207 [USACO1.2]双重回文数 Dual Palindromes

    P1207 [USACO1.2]双重回文数 Dual Palindromes 题目描述 如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做"回文数".例如,12321就是一 ...

  6. 洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…【字符串+模拟】

    P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He- 题目描述 众所周知,在每一个彗星后都有一只UFO.这些UFO时常来收集地球上的忠诚支持者.不幸的是,他们的飞碟每次出行都 ...

  7. 洛谷 P1208 [USACO1.3]混合牛奶 Mixing Milk

    P1208 [USACO1.3]混合牛奶 Mixing Milk 题目描述 由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要.帮助Marry乳业找到最优的牛奶采购方案. Marry乳业 ...

  8. 洛谷——P1200 [USACO1.1]你的飞碟在这儿Your Ride Is Here

    P1200 [USACO1.1]你的飞碟在这儿Your Ride Is Here 题目描述 众所周知,在每一个彗星后都有一只UFO.这些UFO时常来收集地球上的忠诚支持者.不幸的是,他们的飞碟每次出行 ...

  9. 洛谷 P1217 [USACO1.5]回文质数 Prime Palindromes 题解 C/C++

    知识点: 回文数有两种 一种是单数位数,abcba,一种是双数位数,abccba 而双数位数是质数的只有11,即偶位回文数全不是质数除了11:所以不需要枚举到1亿,到1千万就好了 以下几种方法供参考 ...

最新文章

  1. python魔法方法详解
  2. keta-custom DWZ validationEng IE 下表单重复提交BUG原因及修复方法
  3. spring cloud微服务分布式云架构(四)-断路器(Hystrix)
  4. 201904快速阅读术
  5. PyCharm 在Windows的有用快捷键
  6. 标签中包含input时line-height属性失效的解决办法
  7. lstm中look_back的大小选择_[Pytorch和Tensorflow对比(二)]:LSTM
  8. Java Web底层(1)
  9. 在线查找和下载jar包的好工具maven repository
  10. AndroidStudio与eclipse打包的时候报错。Error:(4) Error: ssdk_instapager_login_html is not translated in......
  11. 基于分数阶傅里叶变换的chirp信号检测与参数估计(原理附代码)
  12. Eclipse的版本、下载网址和安装
  13. 【洛谷题解】P1427 小鱼的数字游戏
  14. DX11 游戏开发笔记 (一) 资源介绍
  15. 有关Nodejs的视频教程
  16. 多空线趋势策略-简易好用型
  17. 欧盟CE公告号-外贸人不得不了解的通关证书
  18. 构建 django项目
  19. 利用freemark进行pdf的转换
  20. 古训【增广贤文】——值得保存细读

热门文章

  1. 初次尝试使用IDAPro修改程序控制流程
  2. python标准库的基本使用
  3. VC++文件编程操作实例
  4. 图解观察托管程序线程
  5. PE文件数据结构汇总
  6. 谷歌地球API相关网页翻译
  7. 焊接产生的问题和解决方法
  8. centos7在分区上建立文件系统和挂载
  9. angularJS(5)
  10. HTML td 标签的 colspan 属性