7-61 浪漫的表白 (5 分)
有一个帅小伙一直暗恋一个女孩,但他还是没有勇气向她表白“我爱你”,更别说“某某某,我爱你,如果非要在这份‘爱’上加一个期限的话,那就是一万年”这类肉麻的话,生怕说了后会是“落花有意流水无情”,连朋友都无法做。不过,在经过一阵思想斗争以后,最后终于还是鼓起勇气向那个女孩进行了表白。女孩没有直接回复他,说了如下这段话: 我知道你一直在关心我,我了解你的心意,但我已经有心仪的人了,我的答案在下面这个问题里,你写出程序看看结果就知道啦。 问题是这样的:你的生日和我的生日之差,如果x是奇数,则结果是“对不起,有缘无份”,如果是偶数,则结果是“傻瓜,我心仪的人其实是你呀!”。 请你编写一个程序判断两人是否能在一起!
输入格式:
输入有2行,第1行表示男生的出生日期,第2行表示女生的出生日期。
输出格式:
首先输出两人生日相隔的天数,如果两人的生日相隔天数是奇数,则输出“对不起,我们有缘无份”,如果是偶数,则输出“傻瓜,我心仪的人其实是你呀!”。
输入样例1:
在这里给出一组输入。例如:
2000-06-05 2000-06-06
结尾无空行
输出样例1:
在这里给出相应的输出。例如:
我们生日相差1天 对不起,我们有缘无份
结尾无空行
输入样例2:
在这里给出一组输入。例如:
2000-06-05 2000-06-07
结尾无空行
输出样例2:
在这里给出相应的输出。例如:
我们生日相差2天 傻瓜,我心仪的人其实是你呀!
结尾无空行
#include<iostream> using namespace std; int main(){ int a,b,c,a1,b1,c1,sum1=0,sum2=0,s=0,s1=0; int f[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; scanf("%d-%d-%d",&a,&b,&c); scanf("%d-%d-%d",&a1,&b1,&c1); if((a%4==0&&a!=100!=0)||a%400==0){ for(int i=1;i<b;i++){ if(i==2) sum1+=29; else sum1+=f[i]; } } else{ for(int i=1;i<b;i++){ sum1+=f[i]; } } if((a1%4==0&&a1%100!=0)||a1%400==0){ for(int i=1;i<b1;i++){ if(i==2) sum2+=29; else sum2+=f[i]; //cout<<sum2<<endl; } } else{ for(int i=1;i<b1;i++){ sum2+=f[i]; } } if(a>a1) swap(a,a1); for(int i=a;i<a1;i++){ if((a%4==0&&a%100!=0)||a%400==0) s1+=366; else s1+=365; } s=abs(sum1+c-sum2-c1)+s1; if(s%2==0) printf("我们生日相差%d天\n傻瓜,我心仪的人其实是你呀!",s); else printf("我们生日相差%d天\n对不起,我们有缘无份",s); }