听取W(A)T(LE)一片(求助)
查看原帖
听取W(A)T(LE)一片(求助)
1328844
72728abcd楼主2024/10/1 16:27

WA ON #1~3,TLE ON#4~8
程序

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	cin>>n;
	int a[n],b[n],c[n],d[n];
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
		b[i]=-4713;
		c[i]=1;
		d[i]=0;
	}
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<=a[i];j++)
		{
			d[i]++;
			if(c[i]==1||c[i]==3||c[i]==5||c[i]==7||c[i]==8||c[i]==10||c[i]==12)
			{
				if(d[i]>32)
				{
					d[i]=1;
					c[i]++;
				}
			}
			if(c[i]==4||c[i]==6||c[i]==9||c[i]==11)
			{
				if(d[i]>31)
				{
					d[i]=1;
					c[i]++;
				}
			}
			if(c[i]==2)
			{
				if((b[i]>1582&&(b[i]%4==0&&b[i]%100==0)||b[i]%400==0)||(b[i]>1582&&(abs(b[i]+1)%4==0&&abs(b[i]+1)%100==0)||abs(b[i]+1)%400==0))
				{
					if(d[i]>30)
					{
						d[i]=1;
						c[i]++;
					}
				}
				else
				{
					if(d[i]>29)
					{
						d[i]=1;
						c[i]++;
					}
				}
			}
			if(c[i]>12)
			{
				c[i]=1;
				b[i]++;
			}
			if(b[i]==1582&&c[i]==10&&d[i]==5)
			{
				d[i]==15;
			}
			if(b[i]==0)
			{
				b[i]=1;
			}
		}
	}
	for(int i=0;i<n;i++)
	{
		if(b[i]<0)
		{
			cout<<d[i]<<" "<<c[i]<<" "<<abs(b[i])<<" "<<"BC"<<endl;
		}
		else
		{
			cout<<d[i]<<" "<<c[i]<<" "<<b[i]<<endl;
		}
	}
	return 0;
}
2024/10/1 16:27
加载中...