HDU-2076 夹角有多大(题目已修改,注意读题)

HDU-2076 夹角有多大(题目已修改,注意读题)
HDU-2076 夹角有多大(题目已修改,注意读题)

代码

#include <iostream>
#include <cmath>

using namespace std;

int main() {

	int T;
	cin>>T;
	for(int i=0; i<T; i++) {
		double h, m, s;
		cin>>h>>m>>s;
		if(h>12){
			h -= 12;
		}
		double angleH = h*30.0 + m*0.5 + 1.0/120.0*s;
		double angleM = m*6.0 + s*0.1;
		double ans = abs(angleH-angleM);
		ans = ans>180?360-ans:ans;
		cout<<(int)ans<<endl;
	}

	return 0;
}

注解

1、计算出来,每秒钟时针转的角度,分针转的角度,时针转的角度。
2、12小时制。一定要注意,h>12时,要先减去12
3、题目输出范围是[0,180],大于180应该用360减去对应的角度,得到小于180的角度。

结果

HDU-2076 夹角有多大(题目已修改,注意读题)