蓝桥杯省赛——猜生日

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

今年的植树节(20122012 年 33 月 1212 日),小明和他的叔叔还有小伙伴们一起去植树。休息的时候,小明的同学问他叔叔多大年纪,他叔叔说:“我说个题目,看你们谁先猜出来!”

“把我出生的年月日连起来拼成一个 88 位数(月、日不足两位前补 00)正好可以被今天的年、月、日整除!”

他想了想,又补充到:“再给个提示,我是 66 月出生的。”

根据这些信息,请你帮小明算一下,他叔叔的出生年月日。

格式是年月日连成的 88 位数。例如,如果是 19481948 年 66 月 1212 日,就写:1948061219480612。

解题思路:因为是选择题,可以直接用暴力枚举,不用担心时间限制,从1900年开始枚举

条件1:月份为6 条件2:因为是6月,日期有30天,所以日期要小于31

条件3:能被植树节这天的年月日整除

#include <stdio.h>
int main()
{
	long long n,i;
	int y,m=6,d;
	for(n=19000101;n<20120312;n++)    //直接从1900年暴力枚举
	{
		y=n/10000;
		m=(n%10000)/100;
		d=n%100;
		if(n%2012==0&&n%3==0&&n%12==0&&m==6&&d<31)    //符合条件则直接输出
		printf("%lld\n",n);
	}
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值