牛客網NOIP賽前集訓營-普及組(第六場)A題金幣
阿新 • • 發佈:2018-12-16
題目連結:https://www.nowcoder.com/acm/contest/170/A 開始想用平方和公式,二分確定r 和l所在的N,再用立方和公式求和。結果二分沒處理好,死迴圈。 參考大佬的程式碼,發現for就行了 ,不會超時。一般什麼資料一遍for 都不會超時(哭)
#include <iostream> #include <stdio.h> #include <algorithm> #include <math.h> #include <stdlib.h> #include <string.h> using namespace std; int main() { long long sum,i,l,r,j; scanf("%lld%lld",&l,&r); sum=0; for(i=1,j=1;j<=r;i++,j+=i*i) { if(j>=l) { sum+=(j-l+1)*i; l=j+1; } } sum+=(r-l+1)*i; printf("%lld\n",sum); return 0; }