use integer; sub tousa{my($a,$d,$n)=@_; $n*(2*$a+($n-1)*$d)/2 } ($P,$Q)=split$",<>; $sn=int(sqrt($P)); $tn=$P/($sn+1); for(1..$sn){ $s[$_]=$s[$_-1]+$P%$_ } for(1..$tn){ $t[$_]=$t[$_-1]+tousa($P%($P/$_),$_,$P/$_-$P/($_+1)) } for(1..$Q){ ($L,$R)=split$",<>; $sum=0; if($P<$L){ $sum=tousa($P,0,$R-$L+1) }elsif($R<=$sn){ $sum=$s[$R]-$s[$L-1] }elsif($sn<$L){ $sum=tousa($P%$L,-$P/$L,$P/($P/$L)-$L+1); $sum+=$t[$P/$L-1]-$t[$P/$R]; $sum+=tousa($P%$R,$P/$R,$R-$P/($P/$R+1)) }else{ $sum=$s[$sn]-$s[$L-1]; $sum+=$t[$tn]-$t[$P/$R]; $sum+=tousa($P%$R,$P/$R,$R-$P/($P/$R+1)) } print$sum,$/ }