描述
Redraiment的老家住在工业区,日耗电量非常大。是政府的眼中钉肉中刺,但又没办法,这里头住的可都是纳税大户呀。 今年7月,又传来了不幸的消息,政府要在7、8月对该区进行拉闸限电。但迫于压力,限电制度规则不会太抠门,政府决定从7月1日停电,然后隔一天到7月3日再停电,再隔两天到7月6日停电,一次下去,每次都比上一次晚一天。 Redraiment可是软件专业的学生,怎么离得开计算机。如果停电,就“英雄无用武之地”了。呵呵。 所以他开始盘算起自己回家的日子了,他想知道自己到家后到底要经历多少天倒霉的停电。你能帮他算一算吗?
输入
输入包括多组数据。 每组数据包括一行:redraiment到家的日期。 输入以0/0结束。
输出
对应每个输入包括一个输出。
为redraiment回家后停电的天数(包括到家那天)。
输入样例 1
8/31
0/0
输出样例 1
0
#include<stdio.h>
int main(){
int m,d;
int day[63]; //注意数组界限
int i=1,t=1,j;
for(j=1;j<=62;j++){ //七八月每一天统一置为1
day[j] = 1;
}
while(i<=62){ //将停电当天置为0
day[i] = 0;
t++;
i+=t;
}
while(scanf("%d/%d",&m,&d)){
if(m==0&&d==0) break;
int td = 0; //已经过去的停电天数
if(m==7){
int k;
for(k=1;k<d;k++){
if(day[k]==0){
td++;
}
}
}
else if(m==8){
td = 7; //七月一共停电7天
int k;
for(k=1;k<d;k++){
if(day[k+31]==0){ //八月下标需加上31
td++;
}
}
}
else{ //除七、八月其他月份停电情况不考虑,暂认为都不停电
td = 10;
}
printf("%d\n",10-td);
}
}