如果您在給定時間啓動12小時模擬時鐘,並在另一個給定時間停止,則分針會超過時針的次數?帶時鐘的任務 - 算法
或多或少我知道該怎麼做,但那些特殊情況是什麼?
我有這樣的事情:
#include<cstdio>
#include<cmath>
int main()
{
int t,h1,m1,i,h2,m2,count,j,j1,j2;
scanf("%d",&t);
while(t--)
{
scanf("%d:%d",&h1,&m1);
scanf("%d:%d",&h2,&m2);
if(h1==0 && m1==0)
m1+=1;
count=0;
if(h1==h2)
{
if(h1>=12)
j=(60*(h1-12))/11;
else
j=(60*h1)/11;
if(j>=m1 && j<m2)
count++;
}
else
{
for(i=h1+1;i<h2;i++)
{
if(i!=11 && i!=23)
count++;
}
if(h1>=12)
j1=(60*(h1-12))/11;
else
j1=(60*h1)/11;
if(j1>=m1 && j1<=59)
count++;
if(h2>=12)
j2=(60*(h2-12))/11;
else
j2=(60*h2)/11;
if(j2<m2 && j2<=59)
count++;
}
printf("%d\n",count);
}
return 0;
}
但是,我的代碼,一些測試會返回一個壞的結果:(
例如:
22:00 02:00
我的代碼應該返回3,但它返回18
能否請您提供您的問題更多的細節?我不明白你在問什麼。什麼是「小費」? 「一直持續到特定時間」是什麼意思?你指的是什麼「特例」? – user3553031
這個想法是計算從00:00到我們指定的小時的分鐘數覆蓋的小時數 – xaxa
我仍然不明白你在說什麼。 「封面小貼士」是什麼意思? – user3553031