蓝桥杯 2012 国庆星期几

【结果填空】 (满分5分)
1949年的国庆节(10月1日)是星期六。
今年(2012)的国庆节是星期一。
那么,从建国到现在,有几次国庆节正好是星期日呢?
只要答案,不限手段!
可以用windows日历,windows计算器,Excel公式,。。。。。
当然,也可以编程!
不要求写出具体是哪些年,只要一个数目!
千万不要提交源代码!
答案不要写在这里,写在“解答.txt”中

有趣的题目,我就来有趣的搞一下
首先Linux下 date命令可以查看当前时间

$ date
Wed Feb  8 21:04:26 CST 2017

拿有没高级用法呢

 $ man date

发现的

       -d, --date=STRING
              display time described by STRING, not 'now'
       %x     locale's date representation (e.g., 12/31/99)            

试一下

$ date -d "10/01/1949"
Sat Oct  1 00:00:00 CST 1949

可以,很强
然后用System的命令

#include <bits/stdc++.h>
using namespace std;
int main()
{
	for (int i = 1949; i <= 2012; i++) {
		stringstream ss;
		ss << i;
		string s;
		ss >> s;
		string cmd = "date -d 10/01/" + s;
		system(cmd.c_str());
	}
}

得到输出

Sat Oct  1 00:00:00 CST 1949
Sun Oct  1 00:00:00 CST 1950
Mon Oct  1 00:00:00 CST 1951
Wed Oct  1 00:00:00 CST 1952
Thu Oct  1 00:00:00 CST 1953
Fri Oct  1 00:00:00 CST 1954
Sat Oct  1 00:00:00 CST 1955
Mon Oct  1 00:00:00 CST 1956
Tue Oct  1 00:00:00 CST 1957
Wed Oct  1 00:00:00 CST 1958
Thu Oct  1 00:00:00 CST 1959
Sat Oct  1 00:00:00 CST 1960
Sun Oct  1 00:00:00 CST 1961
Mon Oct  1 00:00:00 CST 1962
Tue Oct  1 00:00:00 CST 1963
Thu Oct  1 00:00:00 CST 1964
Fri Oct  1 00:00:00 CST 1965
Sat Oct  1 00:00:00 CST 1966
Sun Oct  1 00:00:00 CST 1967
Tue Oct  1 00:00:00 CST 1968
Wed Oct  1 00:00:00 CST 1969
Thu Oct  1 00:00:00 CST 1970
Fri Oct  1 00:00:00 CST 1971
Sun Oct  1 00:00:00 CST 1972
Mon Oct  1 00:00:00 CST 1973
Tue Oct  1 00:00:00 CST 1974
Wed Oct  1 00:00:00 CST 1975
Fri Oct  1 00:00:00 CST 1976
Sat Oct  1 00:00:00 CST 1977
Sun Oct  1 00:00:00 CST 1978
Mon Oct  1 00:00:00 CST 1979
Wed Oct  1 00:00:00 CST 1980
Thu Oct  1 00:00:00 CST 1981
Fri Oct  1 00:00:00 CST 1982
Sat Oct  1 00:00:00 CST 1983
Mon Oct  1 00:00:00 CST 1984
Tue Oct  1 00:00:00 CST 1985
Wed Oct  1 00:00:00 CST 1986
Thu Oct  1 00:00:00 CST 1987
Sat Oct  1 00:00:00 CST 1988
Sun Oct  1 00:00:00 CST 1989
Mon Oct  1 00:00:00 CST 1990
Tue Oct  1 00:00:00 CST 1991
Thu Oct  1 00:00:00 CST 1992
Fri Oct  1 00:00:00 CST 1993
Sat Oct  1 00:00:00 CST 1994
Sun Oct  1 00:00:00 CST 1995
Tue Oct  1 00:00:00 CST 1996
Wed Oct  1 00:00:00 CST 1997
Thu Oct  1 00:00:00 CST 1998
Fri Oct  1 00:00:00 CST 1999
Sun Oct  1 00:00:00 CST 2000
Mon Oct  1 00:00:00 CST 2001
Tue Oct  1 00:00:00 CST 2002
Wed Oct  1 00:00:00 CST 2003
Fri Oct  1 00:00:00 CST 2004
Sat Oct  1 00:00:00 CST 2005
Sun Oct  1 00:00:00 CST 2006
Mon Oct  1 00:00:00 CST 2007
Wed Oct  1 00:00:00 CST 2008
Thu Oct  1 00:00:00 CST 2009
Fri Oct  1 00:00:00 CST 2010
Sat Oct  1 00:00:00 CST 2011
Mon Oct  1 00:00:00 CST 2012

使用管道,将输出重定向到文本文件 cal

 ./Untitled1 > cal

现在处理cal就好了

 #include <bits/stdc++.h>
using namespace std;
int main()
{
	freopen("cal", "r", stdin);
	string s;
	int ans = 0;
	while (cin >> s) ans += (s == "Sun");
	cout << ans << endl;
}

答案 9

这种搞法Windwos肯定行不通的,到时候再议 : )

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值