PAT乙级 1037
//1037#include <iostream>using namespace std;int main(){int g,s,k,g1,s1,k1,g2,s2,k2,flag=0;scanf("%d.%d.%d %d.%d.%d",&g,&s,&k,&g1,&s1,&k1);if(g==g1&&s==s1&&am
·
//1037
#include <iostream>
using namespace std;
int main(){
int g,s,k,g1,s1,k1,g2,s2,k2,flag=0;
scanf("%d.%d.%d %d.%d.%d",&g,&s,&k,&g1,&s1,&k1);
if(g==g1&&s==s1&&k==k1){
cout<<"0.0.0";return 0;
}
if((g<g1)||(g==g1&&s<s1)||(g==g1&&s==s1&&k<k1)){
if(k1<k){
k2=k1+29-k;s1--;
}
else k2=k1-k;
if(s1<s){
s2=s1+17-s;g1--;
}
else s2=s1-s;
g2=g1-g;
}
else{
flag=1;
int tg=g,ts=s,tk=k;
g=g1,s=s1,k=k1,g1=tg,s1=ts,k1=tk;
if(k1<k){
k2=k1+29-k;s1--;
}
else k2=k1-k;
if(s1<s){
s2=s1+17-s;g1--;
}
else s2=s1-s;
g2=g1-g;
}
if(flag==1) cout<<"-";
cout<<g2<<"."<<s2<<"."<<k2;
return 0;
}
用了非常笨的方法,非常多重复代码,但是容易理解。
更多推荐
已为社区贡献1条内容
所有评论(0)