SRM 509 DIV1 Easy - LuckyRemainder

問題


http://community.topcoder.com/stat?c=problem_statement&pm=11138&rd=14438

解き方


各桁の数は与えられた整数の桁数をNとすると、それぞれ2^(N-1)回
足されることになる。

この数を9で割った余りが答えになる。

コード


class LuckyRemainder {

public:

int getLuckyRemainder(string X) {
long long ret=0;
FORE(i,0,X.size())ret=(ret+X[i]-'0')%9;
ret*=pow(2,X.size()-1);

return ret%9;
}

};

Share this

Related Posts

Previous
Next Post »