SRM 587 DIV1 Easy - JumpFurther

問題


http://community.topcoder.com/stat?c=problem_statement&pm=12300&rd=15699

解き方


最初はすべてのターンでジャンプし、そのときbadStepに当たらなければ
それが最大の答えとなる。
badStepにあたった時、最初の1ステップだけ待てばbadStepに当たらなくなるので
それが答えになる。

コード


class JumpFurther {

public: int furthest(int N, int badStep) {
int valid=1;

int cur=0;
for(int i=1;i<=N;i++){
cur+=i;
if(cur==badStep)valid=0;
}
if(valid)return cur;

cur=0;
for(int i=2;i<=N;i++){
cur+=i;
}

return cur;
}

};

Share this

Related Posts

Previous
Next Post »