求助!!!!!自动找人系统 Problem ID: 9302 Contest ID: 5968 必做题 Wrong Answer 75 分 【题目描述】 给定三个参数a,b,c,表示年,月,日,(不考虑闰年)表示一个时间节点。他要找出在两个时间节点之间的时间(包括两个时间节点本身)。现在给定两个时间节点和一个时间,他要判断这个时间是否在这个时间段之中。 【数据格式】 输入三行,三个时间,每行有三个数,表示年月日。前两行表示两个时间节点(不一定按照第一个小于第二个的顺序给出),最后一行是这个时间发生的时间。

#include
using namespace std;
int main()
{int a,b,c,a1,b1,c1,a2,b2,c2,x,y,z,x1,y1,z1;
cin>>a1>>b1>>c1>>a2>>b2>>c2>>a>>b>>c;
x=min(a1,a2);
y=min(b1,b2);
z=min(c1,c2);
x1=max(a1,a2);
y1=max(b1,b2);
z1=max(c1,c2);
if(x<a&&a<x1){cout<<“Yes”;}
else if(x==a&&a<x1){if(y<b||y==b&&z<=c){cout<<“Yes”;}}
else if(x<a&&a==x1){if(b<y1||y1==b&&c<=z1){cout<<“Yes”;}}
else if(x==a&&a==x1){if(y<b&&b<y1||y<b&&b==y1&&c<=z1||y==b&&b<y1&&z<=c){cout<<“Yes”;}}
else{cout<<“No”;}
return 0;
}

3 个赞

提供一下完整体面(包括样例)

1 个赞

样例输入:

2007 1 1 2007 12 31 2007 3 22

样例输出:

Yes

1 个赞

现在会了吗

1 个赞
#include<bits/stdc++.h>
using namespace std;
int main()
{
	int a, b, c, a1, b1, c1, a2, b2, c2, x, y, z, x1, y1, z1;
	cin >> a1 >> b1 >> c1 >> a2 >> b2 >> c2 >> a >> b >> c;
	x = min(a1, a2);
	y = min(b1, b2);
	z = min(c1, c2);
	x1 = max(a1, a2);
	y1 = max(b1, b2);
	z1 = max(c1, c2);
	if (x < a && a < x1)
	{
		cout <<"Yes";
	}
	else if (x == a && a < x1)
	{
		if (y < b || y == b && z <= c)
		{
			cout <<"Yes";
		}
		else cout << "No"; // 这里如果不成立也许也要加
	}
	else if (x < a && a == x1)
	{
		if (b < y1 || y1 == b && c <= z1)
		{
			cout <<"Yes";
		}
		else cout << "No";// 这里如果不成立也许也要加
	}
	else if (x == a && a == x1)
	{
		if (y < b && b < y1 || y < b && b == y1 && c <= z1 || y == b && b < y1 && z <= c)
		{
			cout <<"Yes";
		}
		else cout << "No"; // 这里如果不成立也许也要加
	}
	else
	{
		cout <<"No";
	}
	return 0;
}
1 个赞

else if 里面的 if 如果不成立应该也要输出 "No"

1 个赞

95分
#include
using namespace std;
int main()
{int a,b,c,a1,b1,c1,a2,b2,c2,x,y,z,x1,y1,z1;
cin>>a1>>b1>>c1>>a2>>b2>>c2>>a>>b>>c;
x=min(a1,a2);
y=min(b1,b2);
z=min(c1,c2);
x1=max(a1,a2);
y1=max(b1,b2);
z1=max(c1,c2);
if(x<a&&a<x1){cout<<“Yes”;}
else if(x==a&&a<x1){if(y<b||y==b&&z<=c){cout<<“Yes”;}else{cout<<“No”;}}
else if(x<a&&a==x1){if(b<y1||y1==b&&c<=z1){cout<<“Yes”;}else{cout<<“No”;}}
else if(x==a&&a==x1){if(y<b&&b<y1||y<b&&b==y1&&c<=z1||y==b&&b<y1&&z<=c){cout<<“Yes”;}else{cout<<“No”;}}
else{cout<<“No”;}
return 0;
}

2 个赞

要开long long

2 个赞

(帖子已被作者删除)

3 个赞
#include<bits/stdc++.h>
using namespace std;
int main(){
    long long a1,b1,c1,a2,b2,c2,a3,b3,c3; //存储三个日期
    cin>>a1>>b1>>c1>>a2>>b2>>c2>>a3>>b3>>c3;
    long long r1=a1*1024+b1*32+c1,r2=a2*1024+b2*32+c2,r3=a3*1024+b3*32+c3; //32进制转十进制
    if(r1>r2)swap(r1,r2);
    if(r3>=r1&&r3<=r2){
        cout<<"Yes";
    }else{
        cout<<"No";
    }
    return 0;
}
2 个赞

如果你多才多艺那你用Python写吧,long long也是入门的数据类型,你可以去搜一下,学习一下

2 个赞