Hatena::Grouptopcoder

TopCoderの問題を解く

解いた問題の一覧表

2009-04-30

ExerciseMachine

| 17:51

問題文

266.14->498.44 / 500

これも問題がわかりにくい。エクササイズの進捗率が小数点以下を含まない時、経過時間も小数点以下を含まない場合にしか、その進捗率を表示しないという、妙なエクササイズマシンの話。gcd(s,100)-1でも解を求められる。

class ExerciseMachine {
public:
    int getPercentages(string time) {
        int HH, MM, SS;
        char pat;
        istringstream iss(time);
        iss >> HH >> pat >> MM >> pat >> SS;
        int s = (HH*60 + MM)*60 + SS;

        int count = 0;
        for (int i = 1; i <= 99; i++)
            if ((i*s)%100 == 0)
                count++;
        return count;
    }
};