自动找人系统
【题目描述】
给定三个参数a,b,c,表示年,月,日,(不考虑闰年)表示一个时间节点。他要找出在两个时间节点之间的时间(包括两个时间节点本身)。现在给定两个时间节点和一个时间,他要判断这个时间是否在这个时间段之中。
【数据格式】
输入三行,三个时间,每行有三个数,表示年月日。前两行表示两个时间节点(不一定按照第一个小于第二个的顺序给出),最后一行是这个时间发生的时间。保证合法
输出一个“Yes”或者“No”表示是否在这个时间段之中。
样例输入:
2007 1 1
2007 12 31
2007 3 22
样例输出:
Yes
下面是我魔改过的代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,c;
int aa,bb,cc;
int aaa,bbb,ccc;
cin>>a>>b>>c;
cin>>aa>>bb>>cc;
cin>>aaa>>bbb>>ccc;
if((aaa>a||(aaa==a&&bbb>b)||(aaa==a&&bbb==b&&ccc>=c))&&(aaa<aa||(aaa==aa&&bbb<bb)||(aaa==aa&&bbb==bb&&ccc<=cc))){
cout<<"Yes"<< endl;
}else{
cout<<"No"<<endl;
}
}
75分
和:
#include<bits/stdc++.h>
using namespace std;
int main(){;
int a,b,c,aa,bb,cc,aaa,bbb,ccc;
int f=0;
cin>>a>>b>>c>>aa>>bb>>cc>>aaa>>bbb>>ccc;
if(a>=aa||b>=bb||c>=cc){
int d=a,e=b,f=c;
a=aa;
aa=d;
b=bb;
bb=e;
c=cc;
cc=f;
}
if(aaa>a&&aaa<aa){
f=1;
cout<<"Yes";
}
if(f!=1&&(aaa==a&&aaa<aa)||(aaa<a&&aaa==aa)){
if(bbb>=b&&bbb<=bb){
if(ccc>=c&&ccc<=cc){
cout<<"Yes";
f=1;
}
}
if(f==0){
cout<<"No";
}
}
if(f!=1&&aaa==a&&aaa==aa){
if(bbb>=b&&bbb<=bb){
if(ccc>=c&&ccc<=cc){
cout<<"Yes";
f=1;
}
}
if(f==0){
cout<<"No";
}
}
}
45分
(大佬求解)!