先计算出所有时针与分针重合的点,在比较
时针与分针重合求法:60x=11y,x为时针,y为分针,枚举x即可
#include<stdio.h>
double norm[]={0,65.45, 130.91, 196.36, 261.82, 327.27, 392.73, 458.18, 523.64, 589.09,
654.55, 720.00, 785.45, 850.91, 916.36, 981.82, 1047.27, 1112.73, 1178.18,
1243.64, 1309.09, 1374.55, 1440.00};
int main()
{
//freopen("Input.txt","r",stdin);
int i;
int h,t,s,m,ans;
while(scanf("%d%d%d%d",&h,&t,&s,&m),h||t||s||m)
{
t+=h*60;
m+=s*60;
if(m<t) m+=720;
ans=0;
for(i=0;i<23;i++)
if((t<=norm[i]&&m>=norm[i]))
ans++;
printf("%d\n",ans);
}
return 0;
}