PKU 2140 Herd Sums
http://poj.org/problem?id=2140
ある数nが与えられる、このnを連続する数の和で表す方法は何通りあるかを求める問題。
リアルに時間かけて悩んでしまったから困る。
main(){ ll n; cin>>n; int ans=0; for(ll i=1;i*i<=2*n;i++){ if(i%2 && n%i==0)++ans; if(i%2==0 && n%i==i/2)++ans; } cout<<ans<<endl; }
http://poj.org/problem?id=2140
ある数nが与えられる、このnを連続する数の和で表す方法は何通りあるかを求める問題。
リアルに時間かけて悩んでしまったから困る。
main(){ ll n; cin>>n; int ans=0; for(ll i=1;i*i<=2*n;i++){ if(i%2 && n%i==0)++ans; if(i%2==0 && n%i==i/2)++ans; } cout<<ans<<endl; }