SRM 515 Div1 Easy RotatedClock

問題

時計の短針と長針を、文字盤のある文字から時計回りに見た角度が与えられる。
このとき、現在の時刻として有り得る値のうち、最も早いものを答えよ。


どの時刻でもありえないときは""を返せ。

制約条件

hourHand, minuteHand は0以上360未満の整数。

方針

角度の基準となる目盛りを12通り試すだけ。

ソースコード

class RotatedClock {
public:
  string getEarliest(int hourHand, int minuteHand) {
  	
  	int a=100000;
  	
  	rep(i,12){
  		int h=(hourHand+30*i)%360, m=(minuteHand+30*i)%360;
  		if(h*2%60 != m/6.0)continue;
  		
  		a=min(a,h/30*60+m/6);
  	}
  	if(a==100000)return "";
  	
  	char ans[10]; sprintf(ans,"%02d:%02d",a/60,a%60);
    return ans;
  }
};