ACM周赛第十题

题目链接:https://vjudge.net/contest/274223#problem/J

#include <iostream>
using namespace std;
struct FUN
{
	int day, month, year;
};
int main()
{
	int i, sum;
	FUN a;
	char p[2];
	while (cin >> a.year>>p[0]>> a.month >>p[1]>> a.day)
	{
		sum = 0;
		if(a.year%400==0)
			for (i = 1; i < a.month; i++)
				switch (i)
				{
				case 1:sum = sum + 31;
					break;
				case 2:sum = sum + 29;
					break;
				case 3:sum = sum + 31;
					break;
				case 4:sum = sum + 30;
					break;
				case 5:sum = sum + 31;
					break;
				case 6:sum = sum + 30;
					break;
				case 7:sum = sum + 31;
					break;
				case 8:sum = sum + 31;
					break;
				case 9:sum = sum + 30;
					break;
				case 10:sum = sum + 31;
					break;
				case 11:sum = sum + 30;
					break;
				case 12:sum = sum + 31;
					break;
				default:
					break;
				}
		else if(a.year%4==0&&a.year%100!=0)
			for (i = 1; i < a.month; i++)
				switch (i)
				{
				case 1:sum = sum + 31;
					break;
				case 2:sum = sum + 29;
					break;
				case 3:sum = sum + 31;
					break;
				case 4:sum = sum + 30;
					break;
				case 5:sum = sum + 31;
					break;
				case 6:sum = sum + 30;
					break;
				case 7:sum = sum + 31;
					break;
				case 8:sum = sum + 31;
					break;
				case 9:sum = sum + 30;
					break;
				case 10:sum = sum + 31;
					break;
				case 11:sum = sum + 30;
					break;
				case 12:sum = sum + 31;
					break;
				default:
					break;
				}
		else  for (i = 1; i < a.month; i++)
			switch (i)
			{
			case 1:sum = sum + 31;
				break;
			case 2:sum = sum + 28;
				break;
			case 3:sum = sum + 31;
				break;
			case 4:sum = sum + 30;
				break;
			case 5:sum = sum + 31;
				break;
			case 6:sum = sum + 30;
				break;
			case 7:sum = sum + 31;
				break;
			case 8:sum = sum + 31;
				break;
			case 9:sum = sum + 30;
				break;
			case 10:sum = sum + 31;
				break;
			case 11:sum = sum + 30;
				break;
			case 12:sum = sum + 31;
				break;
			default:
				break;
			}
		sum = sum + a.day;
		cout << sum;
		cout << '\n';
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值