【杭電-oj】-2076-夾角有多大
阿新 • • 發佈:2019-01-04
Problem Description
時間過的好快,一個學期就這麼的過去了,xhd在傻傻的看著表,出於對資料的渴望,突然他想知道這個表的時針和分針的夾角是多少。現在xhd知道的只有時間,請你幫他算出這個夾角。
注:夾角的範圍[0,180],時針和分針的轉動是連續而不是離散的。
Input 輸入資料的第一行是一個數據T,表示有T組資料。
每組資料有三個整數h(0 <= h < 24),m(0 <= m < 60),s(0 <= s < 60)分別表示時、分、秒。
Output 對於每組輸入資料,輸出夾角的大小的整數部分。
Sample Input 2 8 3 17 5 13 30
Sample Output 138 75 注意24小時表示時大於12點的數應減去12!!!
注:夾角的範圍[0,180],時針和分針的轉動是連續而不是離散的。
Input 輸入資料的第一行是一個數據T,表示有T組資料。
每組資料有三個整數h(0 <= h < 24),m(0 <= m < 60),s(0 <= s < 60)分別表示時、分、秒。
Output 對於每組輸入資料,輸出夾角的大小的整數部分。
Sample Input 2 8 3 17 5 13 30
Sample Output 138 75 注意24小時表示時大於12點的數應減去12!!!
#include<stdio.h> int main() { int n; scanf("%d",&n); while(n--) { double h,m,s; double y1,y2,y3,y4; scanf("%lf%lf%lf",&h,&m,&s); if(h>=12) h=h-12; y1=s/60; y2=(m+y1)/60; y3=y2*360; y4=(h+y2)*30; if(y4>y3) { if((y4-y3)>180) printf("%d\n",int (360-y4+y3)); else printf("%d\n",int (y4-y3)); } else { if((y3-y4)>180) printf("%d\n",int (360-y3+y4)); else printf("%d\n",int (y3-y4)); } } return 0; }